CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
MEtoEDMConverter Class Reference

#include <MEtoEDMConverter.h>

Inheritance diagram for MEtoEDMConverter:
edm::one::EDProducer< edm::RunCache< meedm::Void >, edm::LuminosityBlockCache< meedm::Void >, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::SharedResources > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Types

using TagList = std::vector< uint32_t >
 
- 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
 

Public Member Functions

void beginJob () override
 
void endJob () override
 
void endLuminosityBlockProduce (edm::LuminosityBlock &, const edm::EventSetup &) override
 
void endRunProduce (edm::Run &, const edm::EventSetup &) override
 
std::shared_ptr< meedm::VoidglobalBeginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) const override
 
std::shared_ptr< meedm::VoidglobalBeginRun (edm::Run const &, const edm::EventSetup &) const override
 
void globalEndLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
void globalEndRun (edm::Run const &, const edm::EventSetup &) override
 
 MEtoEDMConverter (const edm::ParameterSet &)
 
void produce (edm::Event &, const edm::EventSetup &) override
 
template<class T >
void putData (DQMStore::IGetter &g, T &iPutTo, bool iLumiOnly, uint32_t run, uint32_t lumi)
 
 ~MEtoEDMConverter () override
 
- Public Member Functions inherited from edm::one::EDProducer< edm::RunCache< meedm::Void >, edm::LuminosityBlockCache< meedm::Void >, edm::EndLuminosityBlockProducer, edm::EndRunProducer, 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
 
ESProxyIndex const * esGetTokenIndices (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::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)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Attributes

bool deleteAfterCopy
 
bool enableMultiThread_
 
std::string fName
 
int frequency
 
std::map< int, int > iCount
 
std::string path
 
int verbosity
 

Additional Inherited Members

- Static Public Member Functions inherited from edm::one::EDProducerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- 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 ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
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)
 

Detailed Description

Class to take dqm monitor elements and convert into a ROOT dataformat stored in Run tree of edm file

Author
M. Strang SUNY-Buffalo

Definition at line 60 of file MEtoEDMConverter.h.

Member Typedef Documentation

using MEtoEDMConverter::TagList = std::vector<uint32_t>

Definition at line 82 of file MEtoEDMConverter.h.

Constructor & Destructor Documentation

MEtoEDMConverter::MEtoEDMConverter ( const edm::ParameterSet iPSet)
explicit

Definition at line 20 of file MEtoEDMConverter.cc.

References deleteAfterCopy, enableMultiThread_, edm::EndLuminosityBlock, edm::EndRun, fName, frequency, edm::ParameterSet::getUntrackedParameter(), path, AlCaHLTBitMon_QueryRunRegistry::string, verbosity, and ~MEtoEDMConverter().

20  :
21  fName(""), verbosity(0), frequency(0), deleteAfterCopy(false)
22 {
23  std::string MsgLoggerCat = "MEtoEDMConverter_MEtoEDMConverter";
24 
25  // get information from parameter set
26  fName = iPSet.getUntrackedParameter<std::string>("Name","MEtoEDMConverter");
27  verbosity = iPSet.getUntrackedParameter<int>("Verbosity",0);
28  frequency = iPSet.getUntrackedParameter<int>("Frequency",50);
29  path = iPSet.getUntrackedParameter<std::string>("MEPathToSave");
30  deleteAfterCopy = iPSet.getUntrackedParameter<bool>("deleteAfterCopy",false);
31  enableMultiThread_ = false;
32  // use value of first digit to determine default output level (inclusive)
33  // 0 is none, 1 is basic, 2 is fill output, 3 is gather output
34  verbosity %= 10;
35 
36  // print out Parameter Set information being used
37  if (verbosity >= 0) {
38  edm::LogInfo(MsgLoggerCat)
39  << "\n===============================\n"
40  << "Initialized as EDProducer with parameter values:\n"
41  << " Name = " << fName << "\n"
42  << " Verbosity = " << verbosity << "\n"
43  << " Frequency = " << frequency << "\n"
44  << " Path = " << path << "\n"
45  << "===============================\n";
46  }
47 
48  std::string sName;
49 
50  // create persistent objects
51 
52  sName = fName + "Run";
53  produces<MEtoEDM<TH1F>, edm::Transition::EndRun>(sName);
54  produces<MEtoEDM<TH1S>, edm::Transition::EndRun>(sName);
55  produces<MEtoEDM<TH1D>, edm::Transition::EndRun>(sName);
56  produces<MEtoEDM<TH2F>, edm::Transition::EndRun>(sName);
57  produces<MEtoEDM<TH2S>, edm::Transition::EndRun>(sName);
58  produces<MEtoEDM<TH2D>, edm::Transition::EndRun>(sName);
59  produces<MEtoEDM<TH3F>, edm::Transition::EndRun>(sName);
60  produces<MEtoEDM<TProfile>, edm::Transition::EndRun>(sName);
61  produces<MEtoEDM<TProfile2D>, edm::Transition::EndRun>(sName);
62  produces<MEtoEDM<double>, edm::Transition::EndRun>(sName);
63  produces<MEtoEDM<long long>, edm::Transition::EndRun>(sName);
64  produces<MEtoEDM<TString>, edm::Transition::EndRun>(sName);
65 
66  sName = fName + "Lumi";
67  produces<MEtoEDM<TH1F>, edm::Transition::EndLuminosityBlock>(sName);
68  produces<MEtoEDM<TH1S>, edm::Transition::EndLuminosityBlock>(sName);
69  produces<MEtoEDM<TH1D>, edm::Transition::EndLuminosityBlock>(sName);
70  produces<MEtoEDM<TH2F>, edm::Transition::EndLuminosityBlock>(sName);
71  produces<MEtoEDM<TH2S>, edm::Transition::EndLuminosityBlock>(sName);
72  produces<MEtoEDM<TH2D>, edm::Transition::EndLuminosityBlock>(sName);
73  produces<MEtoEDM<TH3F>, edm::Transition::EndLuminosityBlock>(sName);
74  produces<MEtoEDM<TProfile>, edm::Transition::EndLuminosityBlock>(sName);
75  produces<MEtoEDM<TProfile2D>, edm::Transition::EndLuminosityBlock>(sName);
76  produces<MEtoEDM<double>, edm::Transition::EndLuminosityBlock>(sName);
77  produces<MEtoEDM<long long>, edm::Transition::EndLuminosityBlock>(sName);
78  produces<MEtoEDM<TString>, edm::Transition::EndLuminosityBlock>(sName);
79 
80  consumesMany<DQMToken, edm::InLumi>();
81  consumesMany<DQMToken, edm::InRun>();
82  usesResource("DQMStore");
83 
84  static_assert(sizeof(int64_t) == sizeof(long long),"type int64_t is not the same length as long long");
85 
86 }
T getUntrackedParameter(std::string const &, T const &) const
MEtoEDMConverter::~MEtoEDMConverter ( )
overridedefault

Referenced by MEtoEDMConverter().

Member Function Documentation

void MEtoEDMConverter::beginJob ( void  )
overridevirtual

Reimplemented from edm::one::EDProducerBase.

Definition at line 91 of file MEtoEDMConverter.cc.

References fastjetJetProducer_validation_cfg::DQMStore, enableMultiThread_, and Utilities::operator.

92 {
93  // Determine if we are running multithreading asking to the DQMStore. Not to be moved in the ctor
95  enableMultiThread_ = dbe->enableMultiThread_;
96 }
void MEtoEDMConverter::endJob ( void  )
overridevirtual

Reimplemented from edm::one::EDProducerBase.

Definition at line 99 of file MEtoEDMConverter.cc.

99 {}
void MEtoEDMConverter::endLuminosityBlockProduce ( edm::LuminosityBlock iLumi,
const edm::EventSetup iSetup 
)
override

Definition at line 125 of file MEtoEDMConverter.cc.

References b, fastjetJetProducer_validation_cfg::DQMStore, g, edm::LuminosityBlockBase::id(), edm::LuminosityBlockID::luminosityBlock(), Utilities::operator, putData(), and edm::LuminosityBlockBase::run().

126 {
127  DQMStore * store = edm::Service<DQMStore>().operator->();
128  store->meBookerGetter([&](DQMStore::IBooker &b, DQMStore::IGetter &g) {
129  putData(g, iLumi, true, iLumi.run(), iLumi.id().luminosityBlock());
130  });
131 }
LuminosityBlockID id() const
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
Definition: Activities.doc:4
RunNumber_t run() const
double b
Definition: hdecay.h:120
LuminosityBlockNumber_t luminosityBlock() const
void putData(DQMStore::IGetter &g, T &iPutTo, bool iLumiOnly, uint32_t run, uint32_t lumi)
void MEtoEDMConverter::endRunProduce ( edm::Run iRun,
const edm::EventSetup iSetup 
)
override

Definition at line 110 of file MEtoEDMConverter.cc.

References b, fastjetJetProducer_validation_cfg::DQMStore, g, Utilities::operator, putData(), and edm::RunBase::run().

111 {
112  DQMStore * store = edm::Service<DQMStore>().operator->();
113  store->meBookerGetter([&](DQMStore::IBooker &b, DQMStore::IGetter &g) {
114  store->scaleElements();
115  putData(g, iRun, false, iRun.run(), 0);
116  });
117 }
RunNumber_t run() const
Definition: RunBase.h:40
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e g
Definition: Activities.doc:4
double b
Definition: hdecay.h:120
void putData(DQMStore::IGetter &g, T &iPutTo, bool iLumiOnly, uint32_t run, uint32_t lumi)
std::shared_ptr< meedm::Void > MEtoEDMConverter::globalBeginLuminosityBlock ( edm::LuminosityBlock const &  ,
edm::EventSetup const &   
) const
override

Definition at line 120 of file MEtoEDMConverter.cc.

120  {
121  return std::shared_ptr<meedm::Void>();
122 }
std::shared_ptr< meedm::Void > MEtoEDMConverter::globalBeginRun ( edm::Run const &  iRun,
const edm::EventSetup iSetup 
) const
override

Definition at line 102 of file MEtoEDMConverter.cc.

102  {
103  return std::shared_ptr<meedm::Void>();
104 }
void MEtoEDMConverter::globalEndLuminosityBlock ( edm::LuminosityBlock const &  ,
edm::EventSetup const &   
)
inlineoverride

Definition at line 76 of file MEtoEDMConverter.h.

References g, and writedatasetfile::run.

76 {};
void MEtoEDMConverter::globalEndRun ( edm::Run const &  iRun,
const edm::EventSetup iSetup 
)
override

Definition at line 107 of file MEtoEDMConverter.cc.

107 {}
void MEtoEDMConverter::produce ( edm::Event iEvent,
const edm::EventSetup iSetup 
)
override
template<class T >
void MEtoEDMConverter::putData ( DQMStore::IGetter g,
T iPutTo,
bool  iLumiOnly,
uint32_t  run,
uint32_t  lumi 
)

Definition at line 135 of file MEtoEDMConverter.cc.

References deleteAfterCopy, MonitorElement::DQM_KIND_INT, MonitorElement::DQM_KIND_REAL, MonitorElement::DQM_KIND_STRING, MonitorElement::DQM_KIND_TH1D, MonitorElement::DQM_KIND_TH1F, MonitorElement::DQM_KIND_TH1S, MonitorElement::DQM_KIND_TH2D, MonitorElement::DQM_KIND_TH2F, MonitorElement::DQM_KIND_TH2S, MonitorElement::DQM_KIND_TH3F, MonitorElement::DQM_KIND_TPROFILE, MonitorElement::DQM_KIND_TPROFILE2D, enableMultiThread_, fName, DQMStore::IGetter::getAllContents(), MonitorElement::getFloatValue(), MonitorElement::getFullname(), MonitorElement::getIntValue(), MonitorElement::getLumiFlag(), MonitorElement::getName(), MonitorElement::getPathname(), MonitorElement::getStringValue(), MonitorElement::getTags(), MonitorElement::getTH1D(), MonitorElement::getTH1F(), MonitorElement::getTH1S(), MonitorElement::getTH2D(), MonitorElement::getTH2F(), MonitorElement::getTH2S(), MonitorElement::getTH3F(), MonitorElement::getTProfile(), MonitorElement::getTProfile2D(), mps_monitormerge::items, MonitorElement::kind(), eostools::move(), path, DQMStore::IGetter::removeElement(), AlCaHLTBitMon_QueryRunRegistry::string, and verbosity.

Referenced by endLuminosityBlockProduce(), and endRunProduce().

140 {
141  std::string MsgLoggerCat = "MEtoEDMConverter_putData";
142 
143  if (verbosity > 0)
144  edm::LogInfo (MsgLoggerCat) << "\nStoring MEtoEDM dataformat histograms.";
145 
146  // extract ME information into vectors
147  std::vector<MonitorElement *>::iterator mmi, mme;
148  std::vector<MonitorElement *> items(iGetter.getAllContents(path,
149  enableMultiThread_ ? run : 0,
150  enableMultiThread_ ? lumi : 0));
151 
152 
153  unsigned int n1F=0;
154  unsigned int n1S=0;
155  unsigned int n1D=0;
156  unsigned int n2F=0;
157  unsigned int n2S=0;
158  unsigned int n2D=0;
159  unsigned int n3F=0;
160  unsigned int nProf=0;
161  unsigned int nProf2=0;
162  unsigned int nDouble=0;
163  unsigned int nInt64=0;
164  unsigned int nString=0;
165 
166  for (mmi = items.begin (), mme = items.end (); mmi != mme; ++mmi) {
167  MonitorElement *me = *mmi;
168 
169  // store only flagged ME at endLumi transition, and Run-based
170  // histo at endRun transition
171  if (iLumiOnly && !me->getLumiFlag()) continue;
172  if (!iLumiOnly && me->getLumiFlag()) continue;
173 
174  switch (me->kind())
175  {
177  ++nInt64;
178  break;
179 
181  ++nDouble;
182  break;
183 
185  ++nString;
186  break;
187 
189  ++n1F;
190  break;
191 
193  ++n1S;
194  break;
195 
197  ++n1D;
198  break;
199 
201  ++n2F;
202  break;
203 
205  ++n2S;
206  break;
207 
209  ++n2D;
210  break;
211 
213  ++n3F;
214  break;
215 
217  ++nProf;
218  break;
219 
221  ++nProf2;
222  break;
223 
224  default:
225  edm::LogError(MsgLoggerCat)
226  << "ERROR: The DQM object '" << me->getFullname()
227  << "' is neither a ROOT object nor a recognised "
228  << "simple object.\n";
229  continue;
230  }
231  }
232 
233  std::unique_ptr<MEtoEDM<long long> > pOutInt(new MEtoEDM<long long>(nInt64));
234  std::unique_ptr<MEtoEDM<double> > pOutDouble(new MEtoEDM<double>(nDouble));
235  std::unique_ptr<MEtoEDM<TString> > pOutString(new MEtoEDM<TString>(nString));
236  std::unique_ptr<MEtoEDM<TH1F> > pOut1(new MEtoEDM<TH1F>(n1F));
237  std::unique_ptr<MEtoEDM<TH1S> > pOut1s(new MEtoEDM<TH1S>(n1S));
238  std::unique_ptr<MEtoEDM<TH1D> > pOut1d(new MEtoEDM<TH1D>(n1D));
239  std::unique_ptr<MEtoEDM<TH2F> > pOut2(new MEtoEDM<TH2F>(n2F));
240  std::unique_ptr<MEtoEDM<TH2S> > pOut2s(new MEtoEDM<TH2S>(n2S));
241  std::unique_ptr<MEtoEDM<TH2D> > pOut2d(new MEtoEDM<TH2D>(n2D));
242  std::unique_ptr<MEtoEDM<TH3F> > pOut3(new MEtoEDM<TH3F>(n3F));
243  std::unique_ptr<MEtoEDM<TProfile> > pOutProf(new MEtoEDM<TProfile>(nProf));
244  std::unique_ptr<MEtoEDM<TProfile2D> > pOutProf2(new MEtoEDM<TProfile2D>(nProf2));
245 
246  for (mmi = items.begin (), mme = items.end (); mmi != mme; ++mmi) {
247 
248  MonitorElement *me = *mmi;
249 
250  // store only flagged ME at endLumi transition, and Run-based
251  // histo at endRun transition
252  if (iLumiOnly && !me->getLumiFlag()) continue;
253  if (!iLumiOnly && me->getLumiFlag()) continue;
254 
255  // get monitor elements
256  switch (me->kind())
257  {
259  pOutInt->putMEtoEdmObject(me->getFullname(),me->getTags(),me->getIntValue());
260  break;
261 
263  pOutDouble->putMEtoEdmObject(me->getFullname(),me->getTags(),me->getFloatValue());
264  break;
265 
267  pOutString->putMEtoEdmObject(me->getFullname(),me->getTags(),me->getStringValue());
268  break;
269 
271  pOut1->putMEtoEdmObject(me->getFullname(),me->getTags(),*me->getTH1F());
272  break;
273 
275  pOut1s->putMEtoEdmObject(me->getFullname(),me->getTags(),*me->getTH1S());
276  break;
277 
279  pOut1d->putMEtoEdmObject(me->getFullname(),me->getTags(),*me->getTH1D());
280  break;
281 
283  pOut2->putMEtoEdmObject(me->getFullname(),me->getTags(),*me->getTH2F());
284  break;
285 
287  pOut2s->putMEtoEdmObject(me->getFullname(),me->getTags(),*me->getTH2S());
288  break;
289 
291  pOut2d->putMEtoEdmObject(me->getFullname(),me->getTags(),*me->getTH2D());
292  break;
293 
295  pOut3->putMEtoEdmObject(me->getFullname(),me->getTags(),*me->getTH3F());
296  break;
297 
299  pOutProf->putMEtoEdmObject(me->getFullname(),me->getTags(),*me->getTProfile());
300  break;
301 
303  pOutProf2->putMEtoEdmObject(me->getFullname(),me->getTags(),*me->getTProfile2D());
304  break;
305 
306  default:
307  edm::LogError(MsgLoggerCat)
308  << "ERROR: The DQM object '" << me->getFullname()
309  << "' is neither a ROOT object nor a recognised "
310  << "simple object.\n";
311  continue;
312  }
313 
314  if (!iLumiOnly) {
315  // remove ME after copy to EDM is done.
316  if (deleteAfterCopy) {
317  iGetter.removeElement(me->getPathname(), me->getName());
318  }
319  }
320  } // end loop through monitor elements
321 
322  std::string sName;
323 
324  if (iLumiOnly) {
325  sName = fName + "Lumi";
326  } else {
327  sName = fName + "Run";
328  }
329 
330  // produce objects to put in events
331  iPutTo.put(std::move(pOutInt),sName);
332  iPutTo.put(std::move(pOutDouble),sName);
333  iPutTo.put(std::move(pOutString),sName);
334  iPutTo.put(std::move(pOut1),sName);
335  iPutTo.put(std::move(pOut1s),sName);
336  iPutTo.put(std::move(pOut1d),sName);
337  iPutTo.put(std::move(pOut2),sName);
338  iPutTo.put(std::move(pOut2s),sName);
339  iPutTo.put(std::move(pOut2d),sName);
340  iPutTo.put(std::move(pOut3),sName);
341  iPutTo.put(std::move(pOutProf),sName);
342  iPutTo.put(std::move(pOutProf2),sName);
343 
344 }
TProfile * getTProfile() const
int64_t getIntValue() const
TProfile2D * getTProfile2D() const
const std::string & getPathname() const
get pathname of parent folder
TH1F * getTH1F() const
TH2S * getTH2S() const
double getFloatValue() const
const std::string & getName() const
get name of ME
TH2D * getTH2D() const
TH2F * getTH2F() const
const std::string & getStringValue() const
const std::string getFullname() const
get full name of ME including Pathname
TH3F * getTH3F() const
DQMNet::TagList getTags() const
TH1D * getTH1D() const
TH1S * getTH1S() const
bool getLumiFlag() const
true if ME is meant to be stored for each luminosity section
Kind kind() const
Get the type of the monitor element.
def move(src, dest)
Definition: eostools.py:511

Member Data Documentation

bool MEtoEDMConverter::deleteAfterCopy
private

Definition at line 88 of file MEtoEDMConverter.h.

Referenced by MEtoEDMConverter(), and putData().

bool MEtoEDMConverter::enableMultiThread_
private

Definition at line 89 of file MEtoEDMConverter.h.

Referenced by beginJob(), MEtoEDMConverter(), and putData().

std::string MEtoEDMConverter::fName
private

Definition at line 85 of file MEtoEDMConverter.h.

Referenced by MEtoEDMConverter(), and putData().

int MEtoEDMConverter::frequency
private

Definition at line 87 of file MEtoEDMConverter.h.

Referenced by MEtoEDMConverter().

std::map<int,int> MEtoEDMConverter::iCount
private

Definition at line 93 of file MEtoEDMConverter.h.

std::string MEtoEDMConverter::path
private
int MEtoEDMConverter::verbosity
private

Definition at line 86 of file MEtoEDMConverter.h.

Referenced by MEtoEDMConverter(), and putData().