CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | Static Private Attributes
MuDTSegmentExtTableProducer Class Reference
Inheritance diagram for MuDTSegmentExtTableProducer:
MuBaseFlatTableProducer edm::stream::EDProducer<>

Public Member Functions

 MuDTSegmentExtTableProducer (const edm::ParameterSet &)
 Constructor. More...
 
- Public Member Functions inherited from MuBaseFlatTableProducer
void beginRun (const edm::Run &run, const edm::EventSetup &config) final
 Configure event setup for each run. More...
 
void endRun (const edm::Run &, const edm::EventSetup &) final
 Empty, needed by interface. More...
 
 MuBaseFlatTableProducer (const edm::ParameterSet &)
 Constructor. More...
 
void produce (edm::Event &, const edm::EventSetup &) final
 Fill ntuples event by event. More...
 
- Public Member Functions inherited from edm::stream::EDProducer<>
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 

Static Public Member Functions

static void fillDescriptions (edm::ConfigurationDescriptions &)
 Fill descriptors. More...
 

Protected Member Functions

void fillTable (edm::Event &) final
 Fill tree branches for a given event. More...
 
void getFromES (const edm::Run &, const edm::EventSetup &) final
 Get info from the ES by run. More...
 
void getFromES (const edm::EventSetup &) final
 Get info from the ES for a given event. More...
 
- Protected Member Functions inherited from MuBaseFlatTableProducer
template<typename T >
void addColumn (std::unique_ptr< nanoaod::FlatTable > &table, const std::string name, const std::vector< T > &vec, const std::string descr)
 

Private Attributes

nano_mu::ESTokenHandle< DTGeometry, MuonGeometryRecord, edm::Transition::BeginRunm_dtGeometry
 DT Geometry. More...
 
std::unique_ptr< DTTTrigBaseSyncm_dtSync
 Handle DT trigger time pedestals. More...
 
bool m_fillExtr
 Fill segment extrapolation table. More...
 
bool m_fillHits
 Fill rec-hit table. More...
 
nano_mu::EDTokenHandle< DTRecSegment4DCollectionm_token
 The segment token. More...
 
nano_mu::ESTokenHandle< GlobalTrackingGeometry, GlobalTrackingGeometryRecordm_trackingGeometry
 Tracking Geometry. More...
 

Static Private Attributes

static const int FIRST_LAYER {1}
 
static const int LAST_LAYER {4}
 
static const int THETA_SL {2}
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDProducer<>
using CacheTypes = CacheContexts< T... >
 
using GlobalCache = typename CacheTypes::GlobalCache
 
using HasAbility = AbilityChecker< T... >
 
using InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache
 
using LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache
 
using LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache >
 
using LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache
 
using RunCache = typename CacheTypes::RunCache
 
using RunContext = RunContextT< RunCache, GlobalCache >
 
using RunSummaryCache = typename CacheTypes::RunSummaryCache
 
- Protected Attributes inherited from MuBaseFlatTableProducer
std::string m_name
 The label name of the FlatTableProducer. More...
 
- Static Protected Attributes inherited from MuBaseFlatTableProducer
static constexpr double DEFAULT_DOUBLE_VAL {-999.0}
 Definition of default values for float variables. More...
 
static constexpr double DEFAULT_DOUBLE_VAL_POS {-1.0}
 Definition of default values for positive float variables. More...
 
static constexpr int8_t DEFAULT_INT8_VAL {-99}
 Definition of default values for int8 variables. More...
 
static constexpr int DEFAULT_INT_VAL {-999}
 Definition of default values for int variables. More...
 
static constexpr int DEFAULT_INT_VAL_POS {-1}
 Definition of default values for positive int variables. More...
 

Detailed Description

Helper class : the segment TableProducer for Phase-1 / Phase2 segments (the DataFormat is the same)

Author
C. Battilana (INFN BO)

Definition at line 32 of file MuDTSegmentExtTableProducer.cc.

Constructor & Destructor Documentation

◆ MuDTSegmentExtTableProducer()

MuDTSegmentExtTableProducer::MuDTSegmentExtTableProducer ( const edm::ParameterSet config)

Constructor.

Definition at line 73 of file MuDTSegmentExtTableProducer.cc.

75  m_token{config, consumesCollector(), "src"},
76  m_fillHits{config.getParameter<bool>("fillHits")},
77  m_fillExtr{config.getParameter<bool>("fillExtrapolation")},
78  m_dtGeometry{consumesCollector()},
79  m_trackingGeometry{consumesCollector()} {
80  produces<nanoaod::FlatTable>();
81  if (m_fillHits) {
82  produces<nanoaod::FlatTable>("hits");
83  }
84  if (m_fillExtr) {
85  produces<nanoaod::FlatTable>("extr");
86  }
87 
88  m_dtSync = DTTTrigSyncFactory::get()->create(config.getParameter<std::string>("tTrigMode"),
89  config.getParameter<edm::ParameterSet>("tTrigModeConfig"),
90  consumesCollector());
91 }
nano_mu::ESTokenHandle< GlobalTrackingGeometry, GlobalTrackingGeometryRecord > m_trackingGeometry
Tracking Geometry.
Definition: config.py:1
nano_mu::EDTokenHandle< DTRecSegment4DCollection > m_token
The segment token.
bool m_fillExtr
Fill segment extrapolation table.
std::unique_ptr< DTTTrigBaseSync > m_dtSync
Handle DT trigger time pedestals.
dictionary config
Read in AllInOne config in JSON format.
Definition: DiMuonV_cfg.py:30
#define get
nano_mu::ESTokenHandle< DTGeometry, MuonGeometryRecord, edm::Transition::BeginRun > m_dtGeometry
DT Geometry.

Member Function Documentation

◆ fillDescriptions()

void MuDTSegmentExtTableProducer::fillDescriptions ( edm::ConfigurationDescriptions descriptions)
static

Fill descriptors.

Definition at line 93 of file MuDTSegmentExtTableProducer.cc.

References edm::ParameterSetDescription::add(), edm::ConfigurationDescriptions::addWithDefaultLabel(), submitPVResolutionJobs::desc, and AlCaHLTBitMon_QueryRunRegistry::string.

93  {
95 
96  desc.add<std::string>("name", "dtSegment");
97  desc.add<edm::InputTag>("src", edm::InputTag{"dt4DSegments"});
98  desc.add<bool>("fillExtrapolation", true);
99  desc.add<bool>("fillHits", true);
100 
101  desc.add<std::string>("tTrigMode", "DTTTrigSyncFromDB");
102 
103  edm::ParameterSetDescription tTrigModeParams;
104  tTrigModeParams.add<bool>("doTOFCorrection", true);
105  tTrigModeParams.add<int>("tofCorrType", 2);
106 
107  tTrigModeParams.add<double>("vPropWire", 24.4);
108  tTrigModeParams.add<bool>("doWirePropCorrection", true);
109  tTrigModeParams.add<int>("wirePropCorrType", 0);
110 
111  tTrigModeParams.add<std::string>("tTrigLabel", "");
112  tTrigModeParams.add<bool>("doT0Correction", true);
113  tTrigModeParams.add<std::string>("t0Label", "");
114  tTrigModeParams.addUntracked<bool>("debug", false);
115 
116  desc.add<edm::ParameterSetDescription>("tTrigModeConfig", tTrigModeParams);
117 
118  descriptions.addWithDefaultLabel(desc);
119 }
void addWithDefaultLabel(ParameterSetDescription const &psetDescription)
ParameterDescriptionBase * add(U const &iLabel, T const &value)

◆ fillTable()

void MuDTSegmentExtTableProducer::fillTable ( edm::Event ev)
finalprotectedvirtual

Fill tree branches for a given event.

Implements MuBaseFlatTableProducer.

Definition at line 130 of file MuDTSegmentExtTableProducer.cc.

References MuBaseFlatTableProducer::addColumn(), anyDirection, DTGeometry::chamber(), nano_mu::EDTokenHandle< T >::conditionalGet(), MuBaseFlatTableProducer::DEFAULT_DOUBLE_VAL, MuBaseFlatTableProducer::DEFAULT_INT_VAL_POS, validationMuonRPCDigis_cfi::digiTime, DeadROC_duringRun::dir, makeMEIFBenchmarkPlots::ev, FIRST_LAYER, GlobalTrackingGeometry::idToDet(), LAST_LAYER, nano_mu_digi_cff::layer, DTGeometry::layer(), m_dtGeometry, m_dtSync, m_fillExtr, m_fillHits, MuBaseFlatTableProducer::m_name, m_token, m_trackingGeometry, eostools::move(), nHits, GeomDet::position(), FastTimerService_cff::range, rpcPointValidation_cfi::recHit, FastTrackerRecHitMaskProducer_cfi::recHits, nano_mu_digi_cff::sector, findQualityFiles::size, DTRecSegment2D::specificRecHits(), relativeConstraints::station, summarizeEdmComparisonLogfiles::success, TableParser::table, THETA_SL, dttriganalyzer_cfi::tTrig, trackerHitRTTI::vector, makeMuonMisalignmentScenario::wheel, PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().

130  {
131  unsigned int nSegments{0};
132 
133  std::vector<float> seg4D_posLoc_x_SL1;
134  std::vector<float> seg4D_posLoc_x_SL3;
135  std::vector<float> seg4D_posLoc_x_midPlane;
136 
137  std::vector<uint32_t> seg4D_extr_begin;
138  std::vector<uint32_t> seg4D_extr_end;
139 
140  std::vector<uint32_t> seg2D_hits_begin;
141  std::vector<uint32_t> seg2D_hits_end;
142 
143  // segment extrapolation to DT layers filled, if m_fillExtr == true
144  unsigned int nExtr{0};
145 
146  std::vector<float> seg4D_hitsExpPos;
147  std::vector<float> seg4D_hitsExpPosCh;
148  std::vector<int16_t> seg4D_hitsExpWire;
149 
150  // rec-hits vectors, filled if m_fillHits == true
151  unsigned int nHits{0};
152 
153  std::vector<float> seg2D_hits_pos;
154  std::vector<float> seg2D_hits_posCh;
155  std::vector<float> seg2D_hits_posErr;
156  std::vector<int16_t> seg2D_hits_side;
157  std::vector<int16_t> seg2D_hits_wire;
158  std::vector<int16_t> seg2D_hits_wirePos;
159  std::vector<int16_t> seg2D_hits_layer;
160  std::vector<int16_t> seg2D_hits_superLayer;
161  std::vector<float> seg2D_hits_time;
162  std::vector<float> seg2D_hits_timeCali;
163 
164  auto fillHits = [&](const DTRecSegment2D* seg, const GeomDet* chamb) {
165  const auto& recHits = seg->specificRecHits();
166 
167  for (const auto& recHit : recHits) {
168  ++nHits;
169 
170  const auto wireId = recHit.wireId();
171  const auto layerId = wireId.layerId();
172  const auto* layer = m_dtGeometry->layer(layerId);
173 
174  seg2D_hits_pos.push_back(recHit.localPosition().x());
175  seg2D_hits_posCh.push_back(chamb->toLocal(layer->toGlobal(recHit.localPosition())).x());
176  seg2D_hits_posErr.push_back(recHit.localPositionError().xx());
177 
178  seg2D_hits_side.push_back(recHit.lrSide());
179  seg2D_hits_wire.push_back(wireId.wire());
180  seg2D_hits_wirePos.push_back(layer->specificTopology().wirePosition(wireId.wire()));
181  seg2D_hits_layer.push_back(layerId.layer());
182  seg2D_hits_superLayer.push_back(layerId.superlayer());
183 
184  auto digiTime = recHit.digiTime();
185 
186  auto tTrig = m_dtSync->offset(wireId);
187 
188  seg2D_hits_time.push_back(digiTime);
189  seg2D_hits_timeCali.push_back(digiTime - tTrig);
190  }
191  };
192 
193  auto segments4D = m_token.conditionalGet(ev);
194 
195  if (segments4D.isValid()) {
196  auto chambIt = segments4D->id_begin();
197  const auto chambEnd = segments4D->id_end();
198 
199  for (; chambIt != chambEnd; ++chambIt) {
200  const auto& range = segments4D->get(*chambIt);
201 
202  for (auto segment4D = range.first; segment4D != range.second; ++segment4D) {
203  auto station = (*chambIt).station();
204  auto wheel = (*chambIt).wheel();
205  auto sector = (*chambIt).sector();
206 
207  bool hasPhi = segment4D->hasPhi();
208  bool hasZed = segment4D->hasZed();
209 
210  auto pos = segment4D->localPosition();
211  auto dir = segment4D->localDirection();
212 
213  std::array<float, 2> xPosLocSL{{DEFAULT_DOUBLE_VAL, DEFAULT_DOUBLE_VAL}};
214  std::array<bool, 2> hasPptSL{{false, false}};
215  auto xPosLocMidPlane = DEFAULT_DOUBLE_VAL;
216 
217  const auto* chamb = m_dtGeometry->chamber(*chambIt);
218 
219  StraightLinePlaneCrossing segmentPlaneCrossing{
220  chamb->toGlobal(pos).basicVector(), chamb->toGlobal(dir).basicVector(), anyDirection};
221 
222  if (hasPhi) {
223  for (int iSL = 0; iSL < 2; ++iSL) {
224  const auto* sl = chamb->superLayer(1 + iSL * 2);
225 
226  auto pptSL = segmentPlaneCrossing.position(sl->surface());
227  hasPptSL[iSL] = pptSL.first;
228 
229  if (hasPptSL[iSL]) {
230  GlobalPoint segExrapolationToSL(pptSL.second);
231  xPosLocSL[iSL] = chamb->toLocal(segExrapolationToSL).x();
232  }
233  }
234  }
235 
236  seg4D_posLoc_x_SL1.push_back(xPosLocSL[0]);
237  seg4D_posLoc_x_SL3.push_back(xPosLocSL[1]);
238 
239  if (hasPptSL[0] && hasPptSL[1])
240  xPosLocMidPlane = (xPosLocSL[0] + xPosLocSL[1]) * 0.5;
241 
242  seg4D_posLoc_x_midPlane.push_back(xPosLocMidPlane);
243 
244  const auto begin = seg4D_hitsExpPos.size();
245 
246  const auto size{station == 4 ? 8 : 12};
247 
248  nExtr += size;
249  seg4D_extr_begin.push_back(begin);
250  seg4D_extr_end.push_back(begin + size);
251 
252  const auto iSLs = station < 4 ? std::vector{1, 2, 3} : std::vector{1, 3};
253 
254  for (int iL = FIRST_LAYER; iL <= LAST_LAYER; ++iL) {
255  for (const auto iSL : iSLs) {
256  auto* layer = m_dtGeometry->layer(DTWireId{wheel, station, sector, iSL, iL, 2});
257  auto ppt = segmentPlaneCrossing.position(layer->surface());
258 
259  bool success{ppt.first}; // check for failure
260 
261  auto expPos{DEFAULT_DOUBLE_VAL};
262  auto expPosCh{DEFAULT_DOUBLE_VAL};
263  auto expWire{DEFAULT_INT_VAL_POS};
264 
265  if (success) {
266  GlobalPoint segExrapolationToLayer(ppt.second);
267  LocalPoint segPosAtZWireLayer = layer->toLocal(segExrapolationToLayer);
268  LocalPoint segPosAtZWireChamber = chamb->toLocal(segExrapolationToLayer);
269 
270  if (hasPhi && iSL != THETA_SL) {
271  expPos = segPosAtZWireLayer.x();
272  expPosCh = segPosAtZWireChamber.x();
273  expWire = layer->specificTopology().channel(segPosAtZWireLayer);
274  } else if (hasZed && iSL == THETA_SL) {
275  expPos = segPosAtZWireLayer.x();
276  expPosCh = segPosAtZWireChamber.y();
277  expWire = layer->specificTopology().channel(segPosAtZWireLayer);
278  }
279  }
280 
281  seg4D_hitsExpPos.push_back(expPos);
282  seg4D_hitsExpPosCh.push_back(expPosCh);
283  seg4D_hitsExpWire.push_back(expWire);
284  }
285  }
286 
287  seg2D_hits_begin.push_back(seg2D_hits_pos.size());
288 
289  const GeomDet* geomDet = m_trackingGeometry->idToDet(segment4D->geographicalId());
290  if (hasPhi) {
291  fillHits(segment4D->phiSegment(), geomDet);
292  }
293 
294  if (hasZed) {
295  fillHits(segment4D->zSegment(), geomDet);
296  }
297 
298  seg2D_hits_end.push_back(seg2D_hits_pos.size());
299  ++nSegments;
300  }
301  }
302  }
303 
304  auto table = std::make_unique<nanoaod::FlatTable>(nSegments, m_name, false, true);
305 
306  table->setDoc("DT segment information");
307 
308  addColumn(table, "seg4D_posLoc_x_SL1", seg4D_posLoc_x_SL1, "position x at SL1 in local coordinates - cm");
309  addColumn(table, "seg4D_posLoc_x_SL3", seg4D_posLoc_x_SL3, "position x at SL3 in local coordinates - cm");
311  "seg4D_posLoc_x_midPlane",
312  seg4D_posLoc_x_midPlane,
313  "position x at SL1 - SL3 mid plane in local coordinates - cm");
314 
315  addColumn(table, "seg2D_hits_begin", seg2D_hits_begin, "begin() of range of quantities in the *_hits_* vectors");
316  addColumn(table, "seg2D_hits_end", seg2D_hits_end, "end() of range of quantities in the *_hits_* vectors");
317 
318  addColumn(table, "seg4D_extr_begin", seg4D_extr_begin, "begin() of range of quantities in the *_extr_* vectors");
319  addColumn(table, "seg4D_extr_end", seg4D_extr_end, "end() of range of quantities in the *_extr_* vectors");
320 
321  ev.put(std::move(table));
322 
323  if (m_fillHits) {
324  auto tabHits = std::make_unique<nanoaod::FlatTable>(nHits, m_name + "_hits", false, false);
325 
326  tabHits->setDoc("Size of DT segment *_hits_* vectors");
327 
328  addColumn(tabHits, "pos", seg2D_hits_pos, "local x position of a hit in layer local coordinates");
329  addColumn(tabHits, "posCh", seg2D_hits_posCh, "local x position of a hit in chamber local coordinates");
330  addColumn(tabHits,
331  "posErr",
332  seg2D_hits_posErr,
333  "local position error of a hit in layer local coordinates - xx component of error matrix");
334  addColumn(tabHits, "side", seg2D_hits_side, "is hit on L/R side of a cell wire - 1/2 is R/L");
335  addColumn(tabHits, "wire", seg2D_hits_wire, "hit wire number - range depends on chamber size");
336  addColumn(tabHits, "wirePos", seg2D_hits_wirePos, "hit wire x position in layer local coordinates");
337  addColumn(tabHits, "layer", seg2D_hits_layer, "hit layer number - range [1:4]");
338  addColumn(tabHits,
339  "superLayer",
340  seg2D_hits_superLayer,
341  "hit superlayer - [1:3] range"
342  "<br />SL 1 and 3 are phi SLs"
343  "<br />SL 2 is theta SL");
344  addColumn(tabHits, "time", seg2D_hits_time, "digi time - ns, pedestal not subtracted");
345  addColumn(tabHits, "timeCali", seg2D_hits_timeCali, "digi time - ns, pedestal subtracted");
346 
347  ev.put(std::move(tabHits), "hits");
348  }
349 
350  if (m_fillExtr) {
351  auto tabExtr = std::make_unique<nanoaod::FlatTable>(nExtr, m_name + "_extr", false, false);
352 
353  tabExtr->setDoc("Size of DT segment *_extr_* vectors");
354  addColumn(tabExtr,
355  "ExpPos",
356  seg4D_hitsExpPos,
357  "expected position of segment extrapolated"
358  "<br />to a given layer in layer local coordinates - cm");
359 
360  addColumn(tabExtr,
361  "ExpPosCh",
362  seg4D_hitsExpPosCh,
363  "expected position of segment extrapolated"
364  "<br />to a given layer in chhamber local coordinates - cm");
365 
366  addColumn(tabExtr,
367  "ExpWire",
368  seg4D_hitsExpWire,
369  "expected wire crossed by segment extrapolated"
370  "<br />to a given layer - range depends on chamber size");
371 
372  ev.put(std::move(tabExtr), "extr");
373  }
374 }
size
Write out results.
nano_mu::ESTokenHandle< GlobalTrackingGeometry, GlobalTrackingGeometryRecord > m_trackingGeometry
Tracking Geometry.
auto conditionalGet(const edm::Event &ev) const
Definition: MuNtupleUtils.h:49
static constexpr double DEFAULT_DOUBLE_VAL
Definition of default values for float variables.
const GeomDet * idToDet(DetId) const override
void addColumn(std::unique_ptr< nanoaod::FlatTable > &table, const std::string name, const std::vector< T > &vec, const std::string descr)
T x() const
Definition: PV3DBase.h:59
T y() const
Definition: PV3DBase.h:60
nano_mu::EDTokenHandle< DTRecSegment4DCollection > m_token
The segment token.
bool m_fillExtr
Fill segment extrapolation table.
static constexpr int DEFAULT_INT_VAL_POS
Definition of default values for positive int variables.
std::vector< DTRecHit1D > specificRecHits() const
Access to specific components.
std::string m_name
The label name of the FlatTableProducer.
const Surface::PositionType & position() const
The position (origin of the R.F.)
Definition: GeomDet.h:43
std::unique_ptr< DTTTrigBaseSync > m_dtSync
Handle DT trigger time pedestals.
TupleMultiplicity< TrackerTraits > const *__restrict__ uint32_t nHits
nano_mu::ESTokenHandle< DTGeometry, MuonGeometryRecord, edm::Transition::BeginRun > m_dtGeometry
DT Geometry.
const DTChamber * chamber(const DTChamberId &id) const
Return a DTChamber given its id.
Definition: DTGeometry.cc:90
def move(src, dest)
Definition: eostools.py:511
const DTLayer * layer(const DTLayerId &id) const
Return a layer given its id.
Definition: DTGeometry.cc:96

◆ getFromES() [1/2]

void MuDTSegmentExtTableProducer::getFromES ( const edm::Run run,
const edm::EventSetup environment 
)
finalprotectedvirtual

Get info from the ES by run.

Reimplemented from MuBaseFlatTableProducer.

Definition at line 121 of file MuDTSegmentExtTableProducer.cc.

References reco_calib_source_client_cfg::environment, nano_mu::ESTokenHandle< T, R, TR >::getFromES(), and m_dtGeometry.

121  {
123 }
void getFromES(const edm::EventSetup &environment)
Get Handle from ES.
Definition: MuNtupleUtils.h:73
nano_mu::ESTokenHandle< DTGeometry, MuonGeometryRecord, edm::Transition::BeginRun > m_dtGeometry
DT Geometry.

◆ getFromES() [2/2]

void MuDTSegmentExtTableProducer::getFromES ( const edm::EventSetup environment)
finalprotectedvirtual

Get info from the ES for a given event.

Reimplemented from MuBaseFlatTableProducer.

Definition at line 125 of file MuDTSegmentExtTableProducer.cc.

References reco_calib_source_client_cfg::environment, nano_mu::ESTokenHandle< T, R, TR >::getFromES(), m_dtSync, and m_trackingGeometry.

125  {
127  m_dtSync->setES(environment);
128 }
nano_mu::ESTokenHandle< GlobalTrackingGeometry, GlobalTrackingGeometryRecord > m_trackingGeometry
Tracking Geometry.
void getFromES(const edm::EventSetup &environment)
Get Handle from ES.
Definition: MuNtupleUtils.h:73
std::unique_ptr< DTTTrigBaseSync > m_dtSync
Handle DT trigger time pedestals.

Member Data Documentation

◆ FIRST_LAYER

const int MuDTSegmentExtTableProducer::FIRST_LAYER {1}
staticprivate

Definition at line 51 of file MuDTSegmentExtTableProducer.cc.

Referenced by fillTable().

◆ LAST_LAYER

const int MuDTSegmentExtTableProducer::LAST_LAYER {4}
staticprivate

Definition at line 52 of file MuDTSegmentExtTableProducer.cc.

Referenced by fillTable().

◆ m_dtGeometry

nano_mu::ESTokenHandle<DTGeometry, MuonGeometryRecord, edm::Transition::BeginRun> MuDTSegmentExtTableProducer::m_dtGeometry
private

DT Geometry.

Definition at line 64 of file MuDTSegmentExtTableProducer.cc.

Referenced by fillTable(), and getFromES().

◆ m_dtSync

std::unique_ptr<DTTTrigBaseSync> MuDTSegmentExtTableProducer::m_dtSync
private

Handle DT trigger time pedestals.

Definition at line 70 of file MuDTSegmentExtTableProducer.cc.

Referenced by fillTable(), and getFromES().

◆ m_fillExtr

bool MuDTSegmentExtTableProducer::m_fillExtr
private

Fill segment extrapolation table.

Definition at line 61 of file MuDTSegmentExtTableProducer.cc.

Referenced by fillTable().

◆ m_fillHits

bool MuDTSegmentExtTableProducer::m_fillHits
private

Fill rec-hit table.

Definition at line 58 of file MuDTSegmentExtTableProducer.cc.

Referenced by fillTable().

◆ m_token

nano_mu::EDTokenHandle<DTRecSegment4DCollection> MuDTSegmentExtTableProducer::m_token
private

The segment token.

Definition at line 55 of file MuDTSegmentExtTableProducer.cc.

Referenced by fillTable().

◆ m_trackingGeometry

nano_mu::ESTokenHandle<GlobalTrackingGeometry, GlobalTrackingGeometryRecord> MuDTSegmentExtTableProducer::m_trackingGeometry
private

Tracking Geometry.

Definition at line 67 of file MuDTSegmentExtTableProducer.cc.

Referenced by fillTable(), and getFromES().

◆ THETA_SL

const int MuDTSegmentExtTableProducer::THETA_SL {2}
staticprivate

Definition at line 53 of file MuDTSegmentExtTableProducer.cc.

Referenced by fillTable().