CMS 3D CMS Logo

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

#include <DTPreCalibrationTask.h>

Inheritance diagram for DTPreCalibrationTask:
DQMEDAnalyzer edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks, edm::Accumulator > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
void bookOccupancyPlot (DQMStore::IBooker &, int wheel, int sector)
 
void bookTimeBoxes (DQMStore::IBooker &, int wheel, int sector)
 Book histos. More...
 
 DTPreCalibrationTask (const edm::ParameterSet &ps)
 Constructor. More...
 
 ~DTPreCalibrationTask () override
 Destructor. More...
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &event, edm::EventSetup const &setup) final
 
virtual void analyze (edm::Event const &, edm::EventSetup const &)
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual void dqmBeginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &)
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer ()
 
virtual void dqmEndLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &)
 
virtual void dqmEndRun (edm::Run const &, edm::EventSetup const &)
 
void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) final
 
void endLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &, edm::EventSetup const &) final
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::one::EDProducer< edm::EndRunProducer, edm::one::WatchRuns, edm::EndLuminosityBlockProducer, edm::one::WatchLuminosityBlocks, edm::Accumulator >
 EDProducer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () 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

edm::EDGetTokenT< DTDigiCollectiondigiLabel
 
std::string folderName
 
int maxTriggerWidth
 
int minTriggerWidth
 
std::map< std::pair< int, int >, MonitorElement * > OccupancyHistos
 
std::map< std::pair< int, int >, MonitorElement * > TimeBoxes
 

Additional Inherited Members

- Public Types inherited from DQMEDAnalyzer
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- 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
 
- 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::ProducerBase
ProducesCollector producesCollector ()
 
- 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)
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Analysis on DT digis (TB + occupancy) before the calibration step

Author
G. Mila - INFN Torino

Definition at line 27 of file DTPreCalibrationTask.h.

Constructor & Destructor Documentation

DTPreCalibrationTask::DTPreCalibrationTask ( const edm::ParameterSet ps)

Constructor.

Definition at line 29 of file DTPreCalibrationTask.cc.

References DataMixerDataOnData_cff::digiLabel, ALCARECODTCalibSynchCosmicsDQM_cff::folderName, edm::ParameterSet::getUntrackedParameter(), LogTrace, ALCARECODTCalibrationDQM_cfi::maxTriggerWidth, and ALCARECODTCalibrationDQM_cfi::minTriggerWidth.

29  {
30  LogTrace("DTPreCalibSummary") << "[DTPrecalibrationTask]: Constructor" << endl;
31 
32  // Label to retrieve DT digis from the event
33  digiLabel = consumes<DTDigiCollection>(ps.getUntrackedParameter<string>("digiLabel"));
34 
35  // parameter for Time Boxes booking
36  minTriggerWidth = ps.getUntrackedParameter<int>("minTriggerWidth", 2000);
37  maxTriggerWidth = ps.getUntrackedParameter<int>("maxTriggerWidth", 6000);
38 
39  // get the histo folder name
40  folderName = ps.getUntrackedParameter<string>("folderName");
41 }
T getUntrackedParameter(std::string const &, T const &) const
edm::EDGetTokenT< DTDigiCollection > digiLabel
#define LogTrace(id)
DTPreCalibrationTask::~DTPreCalibrationTask ( )
override

Destructor.

Definition at line 43 of file DTPreCalibrationTask.cc.

43 {}

Member Function Documentation

void DTPreCalibrationTask::analyze ( const edm::Event event,
const edm::EventSetup setup 
)
override

Definition at line 59 of file DTPreCalibrationTask.cc.

References DataMixerDataOnData_cff::digiLabel, HcalObjRepresent::Fill(), DTLayerId::layer(), edm::second(), DTChamberId::station(), DTSuperLayerId::superlayer(), and photonAnalyzer_cfi::yBin.

59  {
60  // Get the digis from the event
62  event.getByToken(digiLabel, dtdigis);
63 
64  // LOOP OVER ALL THE DIGIS OF THE EVENT
66  for (dtLayerId_It = dtdigis->begin(); dtLayerId_It != dtdigis->end(); ++dtLayerId_It) {
67  for (DTDigiCollection::const_iterator digiIt = ((*dtLayerId_It).second).first;
68  digiIt != ((*dtLayerId_It).second).second;
69  ++digiIt) {
70  // Fill the Time Boxes
71  int tdcTime = (*digiIt).countsTDC();
72  TimeBoxes[make_pair((*dtLayerId_It).first.superlayerId().chamberId().wheel(),
73  (*dtLayerId_It).first.superlayerId().chamberId().sector())]
74  ->Fill(tdcTime);
75 
76  // Fill the occupancy plot
77  const DTLayerId dtLId = (*dtLayerId_It).first;
78  int yBin = (dtLId.station() - 1) * 12 + dtLId.layer() + 4 * (dtLId.superlayer() - 1);
79  if (dtLId.station() == 4 && dtLId.superlayer() == 3)
80  yBin = (dtLId.station() - 1) * 12 + dtLId.layer() + 4 * (dtLId.superlayer() - 2);
81  if ((*dtLayerId_It).first.superlayerId().chamberId().sector() < 13)
82  OccupancyHistos[make_pair((*dtLayerId_It).first.superlayerId().chamberId().wheel(),
83  (*dtLayerId_It).first.superlayerId().chamberId().sector())]
84  ->Fill((*digiIt).wire(), yBin);
85  else {
86  if (dtLId.superlayer() != 3)
87  yBin = 44 + dtLId.layer();
88  else
89  yBin = 48 + dtLId.layer();
90  if ((*dtLayerId_It).first.superlayerId().chamberId().sector() == 13)
91  OccupancyHistos[make_pair((*dtLayerId_It).first.superlayerId().chamberId().wheel(), 4)]->Fill(
92  (*digiIt).wire(), yBin);
93  if ((*dtLayerId_It).first.superlayerId().chamberId().sector() == 14)
94  OccupancyHistos[make_pair((*dtLayerId_It).first.superlayerId().chamberId().wheel(), 10)]->Fill(
95  (*digiIt).wire(), yBin);
96  }
97  }
98  }
99 }
std::map< std::pair< int, int >, MonitorElement * > OccupancyHistos
edm::EDGetTokenT< DTDigiCollection > digiLabel
int layer() const
Return the layer number.
Definition: DTLayerId.h:42
U second(std::pair< T, U > const &p)
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
int superlayer() const
Return the superlayer number (deprecated method name)
std::vector< DigiType >::const_iterator const_iterator
std::map< std::pair< int, int >, MonitorElement * > TimeBoxes
int station() const
Return the station number.
Definition: DTChamberId.h:42
void DTPreCalibrationTask::bookHistograms ( DQMStore::IBooker iBooker,
edm::Run const &  ,
edm::EventSetup const &   
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 45 of file DTPreCalibrationTask.cc.

References ALCARECODTCalibSynchCosmicsDQM_cff::folderName, LogTrace, dqm::dqmstoreimpl::DQMStore::IBooker::setCurrentFolder(), and makeMuonMisalignmentScenario::wheel.

45  {
46  for (int wheel = -2; wheel <= 2; wheel++) {
47  for (int sector = 1; sector <= 14; sector++) {
48  LogTrace("DTPreCalibSummary") << "[DTPrecalibrationTask]: Book histos for wheel " << wheel << ", sector "
49  << sector << endl;
50  iBooker.setCurrentFolder(folderName + "/TimeBoxes");
51  bookTimeBoxes(iBooker, wheel, sector);
52  iBooker.setCurrentFolder(folderName + "/OccupancyHistos");
53  if (sector < 13)
54  bookOccupancyPlot(iBooker, wheel, sector);
55  }
56  }
57 }
void bookTimeBoxes(DQMStore::IBooker &, int wheel, int sector)
Book histos.
void bookOccupancyPlot(DQMStore::IBooker &, int wheel, int sector)
#define LogTrace(id)
void DTPreCalibrationTask::bookOccupancyPlot ( DQMStore::IBooker iBooker,
int  wheel,
int  sector 
)

Definition at line 116 of file DTPreCalibrationTask.cc.

References dqm::dqmstoreimpl::DQMStore::IBooker::book2D(), fileinputsource_cfi::sec, dqm::impl::MonitorElement::setAxisTitle(), and makeMuonMisalignmentScenario::wheel.

116  {
117  stringstream wh;
118  wh << wheel;
119  stringstream sec;
120  sec << sector;
121 
122  // book the occpancy plot
123  if (sector == 4 || sector == 10)
124  OccupancyHistos[make_pair(wheel, sector)] = iBooker.book2D("Occupancy_W" + wh.str() + "_Sec" + sec.str(),
125  "Occupancy W" + wh.str() + "_Sec" + sec.str(),
126  100,
127  1,
128  100,
129  52,
130  1,
131  53);
132  else
133  OccupancyHistos[make_pair(wheel, sector)] = iBooker.book2D("Occupancy_W" + wh.str() + "_Sec" + sec.str(),
134  "Occupancy W" + wh.str() + "_Sec" + sec.str(),
135  100,
136  1,
137  100,
138  44,
139  1,
140  45);
141  OccupancyHistos[make_pair(wheel, sector)]->setAxisTitle("wire number", 1);
142  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(1, "M1L1", 2);
143  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(2, "M1L2", 2);
144  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(3, "M1L3", 2);
145  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(4, "M1L4", 2);
146  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(5, "M1L5", 2);
147  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(6, "M1L6", 2);
148  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(7, "M1L7", 2);
149  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(8, "M1L8", 2);
150  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(9, "M1L9", 2);
151  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(10, "M1L10", 2);
152  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(11, "M1L11", 2);
153  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(12, "M1L12", 2);
154  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(13, "M2L1", 2);
155  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(14, "M2L2", 2);
156  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(15, "M2L3", 2);
157  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(16, "M2L4", 2);
158  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(17, "M2L5", 2);
159  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(18, "M2L6", 2);
160  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(19, "M2L7", 2);
161  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(20, "M2L8", 2);
162  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(21, "M2L9", 2);
163  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(22, "M2L10", 2);
164  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(23, "M2L11", 2);
165  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(24, "M2L12", 2);
166  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(25, "M3L1", 2);
167  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(26, "M3L2", 2);
168  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(27, "M3L3", 2);
169  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(28, "M3L4", 2);
170  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(29, "M3L5", 2);
171  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(30, "M3L6", 2);
172  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(31, "M3L7", 2);
173  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(32, "M3L8", 2);
174  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(33, "M3L9", 2);
175  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(34, "M3L10", 2);
176  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(35, "M3L11", 2);
177  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(36, "M3L12", 2);
178  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(37, "M4L1", 2);
179  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(38, "M4L2", 2);
180  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(39, "M4L3", 2);
181  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(40, "M4L4", 2);
182  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(41, "M4L5", 2);
183  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(42, "M4L6", 2);
184  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(43, "M4L7", 2);
185  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(44, "M4L8", 2);
186  if (sector == 4) {
187  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(45, "M4Sec13L1", 2);
188  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(46, "M4Sec13L2", 2);
189  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(47, "M4Sec13L3", 2);
190  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(48, "M4Sec13L4", 2);
191  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(49, "M4Sec13L5", 2);
192  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(50, "M4Sec13L6", 2);
193  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(51, "M4Sec13L7", 2);
194  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(52, "M4Sec13L8", 2);
195  }
196  if (sector == 10) {
197  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(45, "M4Sec14L1", 2);
198  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(46, "M4Sec14L2", 2);
199  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(47, "M4Sec14L3", 2);
200  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(48, "M4Sec14L4", 2);
201  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(49, "M4Sec14L5", 2);
202  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(50, "M4Sec14L6", 2);
203  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(51, "M4Sec14L7", 2);
204  OccupancyHistos[make_pair(wheel, sector)]->setBinLabel(52, "M4Sec14L8", 2);
205  }
206 }
std::map< std::pair< int, int >, MonitorElement * > OccupancyHistos
void DTPreCalibrationTask::bookTimeBoxes ( DQMStore::IBooker iBooker,
int  wheel,
int  sector 
)

Book histos.

Definition at line 101 of file DTPreCalibrationTask.cc.

References dqm::dqmstoreimpl::DQMStore::IBooker::book1D(), ALCARECODTCalibrationDQM_cfi::maxTriggerWidth, ALCARECODTCalibrationDQM_cfi::minTriggerWidth, fileinputsource_cfi::sec, dqm::impl::MonitorElement::setAxisTitle(), and makeMuonMisalignmentScenario::wheel.

101  {
102  stringstream wh;
103  wh << wheel;
104  stringstream sec;
105  sec << sector;
106 
107  // book the time boxes
108  TimeBoxes[make_pair(wheel, sector)] = iBooker.book1D("TimeBox_W" + wh.str() + "_Sec" + sec.str(),
109  "Time Box W" + wh.str() + "_Sec" + sec.str(),
113  TimeBoxes[make_pair(wheel, sector)]->setAxisTitle("TDC counts");
114 }
std::map< std::pair< int, int >, MonitorElement * > TimeBoxes

Member Data Documentation

edm::EDGetTokenT<DTDigiCollection> DTPreCalibrationTask::digiLabel
private

Definition at line 43 of file DTPreCalibrationTask.h.

std::string DTPreCalibrationTask::folderName
private

Definition at line 46 of file DTPreCalibrationTask.h.

int DTPreCalibrationTask::maxTriggerWidth
private

Definition at line 45 of file DTPreCalibrationTask.h.

int DTPreCalibrationTask::minTriggerWidth
private

Definition at line 44 of file DTPreCalibrationTask.h.

std::map<std::pair<int, int>, MonitorElement *> DTPreCalibrationTask::OccupancyHistos
private

Definition at line 52 of file DTPreCalibrationTask.h.

std::map<std::pair<int, int>, MonitorElement *> DTPreCalibrationTask::TimeBoxes
private

Definition at line 49 of file DTPreCalibrationTask.h.