CMS 3D CMS Logo

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

#include <RecoTracker/DeDx/plugins/DeDxHitInfoProducer.cc>

Inheritance diagram for DeDxHitInfoProducer:
edm::stream::EDProducer<>

Public Member Functions

 DeDxHitInfoProducer (const edm::ParameterSet &)
 
 ~DeDxHitInfoProducer () override
 
- Public Member Functions inherited from edm::stream::EDProducer<>
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Private Member Functions

void beginRun (edm::Run const &run, const edm::EventSetup &) override
 
void makeCalibrationMap (const TrackerGeometry &tkGeom)
 
void processHit (const TrackingRecHit *recHit, const float trackMomentum, const float cosine, reco::DeDxHitInfo &hitDeDxInfo, const LocalPoint &hitLocalPos)
 
void produce (edm::Event &, const edm::EventSetup &) override
 
uint64_t xorshift128p (uint64_t state[2])
 

Private Attributes

std::vector< std::vector< float > > calibGains
 
const float lowPtTracksDeDxThreshold
 
GenericTruncatedAverageDeDxEstimator lowPtTracksEstimator
 
const unsigned int lowPtTracksPrescaleFail
 
const unsigned int lowPtTracksPrescalePass
 
const std::string m_calibrationPath
 
unsigned int m_off
 
edm::EDGetTokenT< reco::TrackCollectionm_tracksTag
 
const float maxTrackEta
 
const float MeVperADCPixel
 
const float MeVperADCStrip
 
const unsigned int minTrackHits
 
const float minTrackPt
 
const float minTrackPtPrescale
 
const bool shapetest
 
edm::ESHandle< TrackerGeometrytkGeom
 
const bool useCalibration
 
const bool usePixel
 
const bool useStrip
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDProducer<>
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 

Detailed Description

Description: <one line="" class="" summary>="">

Implementation: <Notes on="" implementation>="">

Definition at line 34 of file DeDxHitInfoProducer.h.

Constructor & Destructor Documentation

◆ DeDxHitInfoProducer()

DeDxHitInfoProducer::DeDxHitInfoProducer ( const edm::ParameterSet iConfig)
explicit

Definition at line 26 of file DeDxHitInfoProducer.cc.

27  : usePixel(iConfig.getParameter<bool>("usePixel")),
28  useStrip(iConfig.getParameter<bool>("useStrip")),
29  MeVperADCPixel(iConfig.getParameter<double>("MeVperADCPixel")),
30  MeVperADCStrip(iConfig.getParameter<double>("MeVperADCStrip")),
31  minTrackHits(iConfig.getParameter<unsigned>("minTrackHits")),
32  minTrackPt(iConfig.getParameter<double>("minTrackPt")),
33  minTrackPtPrescale(iConfig.getParameter<double>("minTrackPtPrescale")),
34  maxTrackEta(iConfig.getParameter<double>("maxTrackEta")),
35  m_calibrationPath(iConfig.getParameter<string>("calibrationPath")),
36  useCalibration(iConfig.getParameter<bool>("useCalibration")),
37  shapetest(iConfig.getParameter<bool>("shapeTest")),
38  lowPtTracksPrescalePass(iConfig.getParameter<uint32_t>("lowPtTracksPrescalePass")),
39  lowPtTracksPrescaleFail(iConfig.getParameter<uint32_t>("lowPtTracksPrescaleFail")),
40  lowPtTracksEstimator(iConfig.getParameter<edm::ParameterSet>("lowPtTracksEstimatorParameters")),
41  lowPtTracksDeDxThreshold(iConfig.getParameter<double>("lowPtTracksDeDxThreshold")) {
42  produces<reco::DeDxHitInfoCollection>();
43  produces<reco::DeDxHitInfoAss>();
44  produces<edm::ValueMap<int>>("prescale");
45 
46  m_tracksTag = consumes<reco::TrackCollection>(iConfig.getParameter<edm::InputTag>("tracks"));
47 
48  if (!usePixel && !useStrip)
49  edm::LogError("DeDxHitsProducer") << "No Pixel Hits NOR Strip Hits will be saved. Running this module is useless";
50 }

References edm::ParameterSet::getParameter(), m_tracksTag, usePixel, and useStrip.

◆ ~DeDxHitInfoProducer()

DeDxHitInfoProducer::~DeDxHitInfoProducer ( )
override

Definition at line 52 of file DeDxHitInfoProducer.cc.

52 {}

Member Function Documentation

◆ beginRun()

void DeDxHitInfoProducer::beginRun ( edm::Run const &  run,
const edm::EventSetup iSetup 
)
overrideprivate

◆ makeCalibrationMap()

void DeDxHitInfoProducer::makeCalibrationMap ( const TrackerGeometry tkGeom)
private

◆ processHit()

void DeDxHitInfoProducer::processHit ( const TrackingRecHit recHit,
const float  trackMomentum,
const float  cosine,
reco::DeDxHitInfo hitDeDxInfo,
const LocalPoint hitLocalPos 
)
private

Definition at line 160 of file DeDxHitInfoProducer.cc.

164  {
165  auto const& thit = static_cast<BaseTrackerRecHit const&>(*recHit);
166  if (!thit.isValid())
167  return;
168 
169  float cosineAbs = std::max(0.00000001f, std::abs(cosine)); //make sure cosine is not 0
170 
171  auto const& clus = thit.firstClusterRef();
172  if (!clus.isValid())
173  return;
174 
175  if (clus.isPixel()) {
176  if (!usePixel)
177  return;
178 
179  const auto* detUnit = recHit->detUnit();
180  if (detUnit == nullptr)
181  detUnit = tkGeom->idToDet(thit.geographicalId());
182  float pathLen = detUnit->surface().bounds().thickness() / cosineAbs;
183  float chargeAbs = clus.pixelCluster().charge();
184  hitDeDxInfo.addHit(chargeAbs, pathLen, thit.geographicalId(), hitLocalPos, clus.pixelCluster());
185  } else if (clus.isStrip() && !thit.isMatched()) {
186  if (!useStrip)
187  return;
188 
189  const auto* detUnit = recHit->detUnit();
190  if (detUnit == nullptr)
191  detUnit = tkGeom->idToDet(thit.geographicalId());
192  int NSaturating = 0;
193  float pathLen = detUnit->surface().bounds().thickness() / cosineAbs;
194  float chargeAbs = DeDxTools::getCharge(&(clus.stripCluster()), NSaturating, *detUnit, calibGains, m_off);
195  hitDeDxInfo.addHit(chargeAbs, pathLen, thit.geographicalId(), hitLocalPos, clus.stripCluster());
196  } else if (clus.isStrip() && thit.isMatched()) {
197  if (!useStrip)
198  return;
199  const SiStripMatchedRecHit2D* matchedHit = dynamic_cast<const SiStripMatchedRecHit2D*>(recHit);
200  if (!matchedHit)
201  return;
202 
203  const auto* detUnitM = matchedHit->monoHit().detUnit();
204  if (detUnitM == nullptr)
205  detUnitM = tkGeom->idToDet(matchedHit->monoHit().geographicalId());
206  int NSaturating = 0;
207  float pathLen = detUnitM->surface().bounds().thickness() / cosineAbs;
208  float chargeAbs =
209  DeDxTools::getCharge(&(matchedHit->monoHit().stripCluster()), NSaturating, *detUnitM, calibGains, m_off);
210  hitDeDxInfo.addHit(chargeAbs, pathLen, thit.geographicalId(), hitLocalPos, matchedHit->monoHit().stripCluster());
211 
212  const auto* detUnitS = matchedHit->stereoHit().detUnit();
213  if (detUnitS == nullptr)
214  detUnitS = tkGeom->idToDet(matchedHit->stereoHit().geographicalId());
215  NSaturating = 0;
216  pathLen = detUnitS->surface().bounds().thickness() / cosineAbs;
217  chargeAbs =
218  DeDxTools::getCharge(&(matchedHit->stereoHit().stripCluster()), NSaturating, *detUnitS, calibGains, m_off);
219  hitDeDxInfo.addHit(chargeAbs, pathLen, thit.geographicalId(), hitLocalPos, matchedHit->stereoHit().stripCluster());
220  }
221 }

References funct::abs(), reco::DeDxHitInfo::addHit(), Surface::bounds(), calibGains, TrackerSingleRecHit::detUnit(), f, TrackingRecHit::geographicalId(), DeDxTools::getCharge(), TrackerGeometry::idToDet(), m_off, SiStripPI::max, SiStripMatchedRecHit2D::monoHit(), rpcPointValidation_cfi::recHit, SiStripMatchedRecHit2D::stereoHit(), TrackerSingleRecHit::stripCluster(), GeomDet::surface(), Bounds::thickness(), tkGeom, usePixel, and useStrip.

Referenced by produce().

◆ produce()

void DeDxHitInfoProducer::produce ( edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivate

Definition at line 64 of file DeDxHitInfoProducer.cc.

64  {
65  edm::Handle<reco::TrackCollection> trackCollectionHandle;
66  iEvent.getByToken(m_tracksTag, trackCollectionHandle);
67  const TrackCollection& trackCollection(*trackCollectionHandle.product());
68 
69  // creates the output collection
70  auto resultdedxHitColl = std::make_unique<reco::DeDxHitInfoCollection>();
71 
72  std::vector<int> indices;
73  std::vector<int> prescales;
74  uint64_t state[2] = {iEvent.id().event(), iEvent.id().luminosityBlock()};
75  for (unsigned int j = 0; j < trackCollection.size(); j++) {
77 
78  //track selection
79  bool passPt = (track.pt() >= minTrackPt), passLowDeDx = false, passHighDeDx = false, pass = passPt;
80  if (!pass && (track.pt() >= minTrackPtPrescale)) {
81  if (lowPtTracksPrescalePass > 0) {
82  passHighDeDx = ((xorshift128p(state) % lowPtTracksPrescalePass) == 0);
83  }
84  if (lowPtTracksPrescaleFail > 0) {
85  passLowDeDx = ((xorshift128p(state) % lowPtTracksPrescaleFail) == 0);
86  }
87  pass = passHighDeDx || passLowDeDx;
88  }
89  if (!pass || std::abs(track.eta()) > maxTrackEta || track.numberOfValidHits() < minTrackHits) {
90  indices.push_back(-1);
91  continue;
92  }
93 
94  reco::DeDxHitInfo hitDeDxInfo;
95  auto const& trajParams = track.extra()->trajParams();
96  auto hb = track.recHitsBegin();
97  for (unsigned int h = 0; h < track.recHitsSize(); h++) {
98  auto recHit = *(hb + h);
100  continue;
101 
102  auto trackDirection = trajParams[h].direction();
103  float cosine = trackDirection.z() / trackDirection.mag();
104 
105  processHit(recHit, track.p(), cosine, hitDeDxInfo, trajParams[h].position());
106  }
107 
108  if (!passPt) {
109  std::vector<DeDxHit> hits;
110  hits.reserve(hitDeDxInfo.size());
111  for (unsigned int i = 0, n = hitDeDxInfo.size(); i < n; ++i) {
112  if (hitDeDxInfo.detId(i).subdetId() <= 2) {
113  hits.push_back(DeDxHit(hitDeDxInfo.charge(i) / hitDeDxInfo.pathlength(i) * MeVperADCPixel, 0, 0, 0));
114  } else {
115  if (shapetest && !DeDxTools::shapeSelection(*hitDeDxInfo.stripCluster(i)))
116  continue;
117  hits.push_back(DeDxHit(hitDeDxInfo.charge(i) / hitDeDxInfo.pathlength(i) * MeVperADCStrip, 0, 0, 0));
118  }
119  }
120  std::sort(hits.begin(), hits.end(), std::less<DeDxHit>());
122  if (passLowDeDx) {
124  } else {
125  indices.push_back(-1);
126  continue;
127  }
128  } else {
129  if (passHighDeDx) {
131  } else {
132  indices.push_back(-1);
133  continue;
134  }
135  }
136  } else {
137  prescales.push_back(1);
138  }
139  indices.push_back(resultdedxHitColl->size());
140  resultdedxHitColl->push_back(hitDeDxInfo);
141  }
143 
144  edm::OrphanHandle<reco::DeDxHitInfoCollection> dedxHitCollHandle = iEvent.put(std::move(resultdedxHitColl));
145 
146  //create map passing the handle to the matched collection
147  auto dedxMatch = std::make_unique<reco::DeDxHitInfoAss>(dedxHitCollHandle);
149  filler.insert(trackCollectionHandle, indices.begin(), indices.end());
150  filler.fill();
151  iEvent.put(std::move(dedxMatch));
152 
153  auto dedxPrescale = std::make_unique<edm::ValueMap<int>>();
154  edm::ValueMap<int>::Filler pfiller(*dedxPrescale);
155  pfiller.insert(dedxHitCollHandle, prescales.begin(), prescales.end());
156  pfiller.fill();
157  iEvent.put(std::move(dedxPrescale), "prescale");
158 }

References funct::abs(), reco::DeDxHitInfo::charge(), GenericTruncatedAverageDeDxEstimator::dedx(), reco::DeDxHitInfo::detId(), trigObjTnPSource_cfi::filler, h, es_hardcode_cfi::hb, hfClusterShapes_cfi::hits, mps_fire::i, iEvent, bTagCombinedSVVariables_cff::indices, trackerHitRTTI::isFromDet(), dqmiolumiharvest::j, lowPtTracksDeDxThreshold, lowPtTracksEstimator, lowPtTracksPrescaleFail, lowPtTracksPrescalePass, m_tracksTag, maxTrackEta, MeVperADCPixel, MeVperADCStrip, minTrackHits, minTrackPt, minTrackPtPrescale, eostools::move(), dqmiodumpmetadata::n, reco::DeDxHitInfo::pathlength(), hltrates_dqm_sourceclient-live_cfg::prescales, processHit(), edm::Handle< T >::product(), rpcPointValidation_cfi::recHit, DeDxTools::shapeSelection(), shapetest, reco::DeDxHitInfo::size(), reco::DeDxHitInfo::stripCluster(), DetId::subdetId(), HLT_2018_cff::track, duplicaterechits_cfi::trackCollection, and xorshift128p().

◆ xorshift128p()

uint64_t DeDxHitInfoProducer::xorshift128p ( uint64_t  state[2])
inlineprivate

Definition at line 77 of file DeDxHitInfoProducer.h.

77  {
78  uint64_t x = state[0];
79  uint64_t const y = state[1];
80  state[0] = y;
81  x ^= x << 23; // a
82  state[1] = x ^ y ^ (x >> 17) ^ (y >> 26); // b, c
83  return state[1] + y;
84  }

References x, and y.

Referenced by produce().

Member Data Documentation

◆ calibGains

std::vector<std::vector<float> > DeDxHitInfoProducer::calibGains
private

Definition at line 72 of file DeDxHitInfoProducer.h.

Referenced by beginRun(), and processHit().

◆ lowPtTracksDeDxThreshold

const float DeDxHitInfoProducer::lowPtTracksDeDxThreshold
private

Definition at line 70 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ lowPtTracksEstimator

GenericTruncatedAverageDeDxEstimator DeDxHitInfoProducer::lowPtTracksEstimator
private

Definition at line 69 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ lowPtTracksPrescaleFail

const unsigned int DeDxHitInfoProducer::lowPtTracksPrescaleFail
private

Definition at line 68 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ lowPtTracksPrescalePass

const unsigned int DeDxHitInfoProducer::lowPtTracksPrescalePass
private

Definition at line 68 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ m_calibrationPath

const std::string DeDxHitInfoProducer::m_calibrationPath
private

Definition at line 64 of file DeDxHitInfoProducer.h.

Referenced by beginRun().

◆ m_off

unsigned int DeDxHitInfoProducer::m_off
private

Definition at line 73 of file DeDxHitInfoProducer.h.

Referenced by beginRun(), and processHit().

◆ m_tracksTag

edm::EDGetTokenT<reco::TrackCollection> DeDxHitInfoProducer::m_tracksTag
private

Definition at line 52 of file DeDxHitInfoProducer.h.

Referenced by DeDxHitInfoProducer(), and produce().

◆ maxTrackEta

const float DeDxHitInfoProducer::maxTrackEta
private

Definition at line 62 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ MeVperADCPixel

const float DeDxHitInfoProducer::MeVperADCPixel
private

Definition at line 56 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ MeVperADCStrip

const float DeDxHitInfoProducer::MeVperADCStrip
private

Definition at line 57 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ minTrackHits

const unsigned int DeDxHitInfoProducer::minTrackHits
private

Definition at line 59 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ minTrackPt

const float DeDxHitInfoProducer::minTrackPt
private

Definition at line 60 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ minTrackPtPrescale

const float DeDxHitInfoProducer::minTrackPtPrescale
private

Definition at line 61 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ shapetest

const bool DeDxHitInfoProducer::shapetest
private

Definition at line 66 of file DeDxHitInfoProducer.h.

Referenced by produce().

◆ tkGeom

edm::ESHandle<TrackerGeometry> DeDxHitInfoProducer::tkGeom
private

Definition at line 75 of file DeDxHitInfoProducer.h.

Referenced by beginRun(), and processHit().

◆ useCalibration

const bool DeDxHitInfoProducer::useCalibration
private

Definition at line 65 of file DeDxHitInfoProducer.h.

Referenced by beginRun().

◆ usePixel

const bool DeDxHitInfoProducer::usePixel
private

Definition at line 54 of file DeDxHitInfoProducer.h.

Referenced by DeDxHitInfoProducer(), and processHit().

◆ useStrip

const bool DeDxHitInfoProducer::useStrip
private

Definition at line 55 of file DeDxHitInfoProducer.h.

Referenced by DeDxHitInfoProducer(), and processHit().

DeDxHitInfoProducer::MeVperADCPixel
const float MeVperADCPixel
Definition: DeDxHitInfoProducer.h:56
TrackerGeometry::idToDet
const TrackerGeomDet * idToDet(DetId) const override
Definition: TrackerGeometry.cc:193
bTagCombinedSVVariables_cff.indices
indices
Definition: bTagCombinedSVVariables_cff.py:67
DeDxHitInfoProducer::useCalibration
const bool useCalibration
Definition: DeDxHitInfoProducer.h:65
DDAxes::y
mps_fire.i
i
Definition: mps_fire.py:355
edm::Association::Filler
Definition: Association.h:78
dqmiodumpmetadata.n
n
Definition: dqmiodumpmetadata.py:28
edm::Handle::product
T const * product() const
Definition: Handle.h:70
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
DeDxTools::makeCalibrationMap
void makeCalibrationMap(const std::string &m_calibrationPath, const TrackerGeometry &tkGeom, std::vector< std::vector< float > > &calibGains, const unsigned int &m_off)
Definition: DeDxTools.cc:252
f
double f[11][100]
Definition: MuScleFitUtils.cc:78
DeDxHitInfoProducer::useStrip
const bool useStrip
Definition: DeDxHitInfoProducer.h:55
h
FWCore Framework interface EventSetupRecordImplementation h
Helper function to determine trigger accepts.
Definition: L1TUtmAlgorithmRcd.h:4
DeDxHitInfoProducer::processHit
void processHit(const TrackingRecHit *recHit, const float trackMomentum, const float cosine, reco::DeDxHitInfo &hitDeDxInfo, const LocalPoint &hitLocalPos)
Definition: DeDxHitInfoProducer.cc:160
DeDxHitInfoProducer::xorshift128p
uint64_t xorshift128p(uint64_t state[2])
Definition: DeDxHitInfoProducer.h:77
TrackerSingleRecHit::stripCluster
SiStripCluster const & stripCluster() const
Definition: TrackerSingleRecHit.h:55
DeDxHitInfoProducer::maxTrackEta
const float maxTrackEta
Definition: DeDxHitInfoProducer.h:62
DDAxes::x
DeDxHitInfoProducer::usePixel
const bool usePixel
Definition: DeDxHitInfoProducer.h:54
DeDxHitInfoProducer::lowPtTracksPrescaleFail
const unsigned int lowPtTracksPrescaleFail
Definition: DeDxHitInfoProducer.h:68
edm::Handle< reco::TrackCollection >
DeDxHitInfoProducer::minTrackPtPrescale
const float minTrackPtPrescale
Definition: DeDxHitInfoProducer.h:61
TrackingRecHit::geographicalId
DetId geographicalId() const
Definition: TrackingRecHit.h:120
rpcPointValidation_cfi.recHit
recHit
Definition: rpcPointValidation_cfi.py:7
DeDxTools::getCharge
int getCharge(const SiStripCluster *cluster, int &nSatStrip, const GeomDetUnit &detUnit, const std::vector< std::vector< float > > &calibGains, const unsigned int &m_off)
Definition: DeDxTools.cc:214
GeomDetEnumerators::PixelBarrel
Definition: GeomDetEnumerators.h:11
GeomDet::surface
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
DeDxHitInfoProducer::minTrackPt
const float minTrackPt
Definition: DeDxHitInfoProducer.h:60
h
edm::EventSetup::get
T get() const
Definition: EventSetup.h:73
TrackerDigiGeometryRecord
Definition: TrackerDigiGeometryRecord.h:15
Surface::bounds
const Bounds & bounds() const
Definition: Surface.h:87
reco::Track
Definition: Track.h:27
GenericTruncatedAverageDeDxEstimator::dedx
std::pair< float, float > dedx(const reco::DeDxHitCollection &Hits) override
Definition: GenericTruncatedAverageDeDxEstimator.h:16
SiStripMatchedRecHit2D::stereoHit
SiStripRecHit2D stereoHit() const
Definition: SiStripMatchedRecHit2D.h:25
DeDxTools::shapeSelection
bool shapeSelection(const SiStripCluster &ampls)
Definition: DeDxTools.cc:9
DeDxHitInfoProducer::MeVperADCStrip
const float MeVperADCStrip
Definition: DeDxHitInfoProducer.h:57
reco::DeDxHitInfo
Definition: DeDxHitInfo.h:14
Bounds::thickness
virtual float thickness() const =0
edm::ParameterSet
Definition: ParameterSet.h:36
edm::LogError
Definition: MessageLogger.h:183
duplicaterechits_cfi.trackCollection
trackCollection
Definition: duplicaterechits_cfi.py:4
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
reco::DeDxHit
Definition: DeDxHit.h:11
trigObjTnPSource_cfi.filler
filler
Definition: trigObjTnPSource_cfi.py:21
hltrates_dqm_sourceclient-live_cfg.prescales
prescales
Definition: hltrates_dqm_sourceclient-live_cfg.py:90
DeDxHitInfoProducer::tkGeom
edm::ESHandle< TrackerGeometry > tkGeom
Definition: DeDxHitInfoProducer.h:75
SiStripMatchedRecHit2D::monoHit
SiStripRecHit2D monoHit() const
Definition: SiStripMatchedRecHit2D.h:26
iEvent
int iEvent
Definition: GenABIO.cc:224
trackerHitRTTI::isFromDet
bool isFromDet(TrackingRecHit const &hit)
Definition: trackerHitRTTI.h:35
get
#define get
DeDxHitInfoProducer::calibGains
std::vector< std::vector< float > > calibGains
Definition: DeDxHitInfoProducer.h:72
DeDxHitInfoProducer::m_tracksTag
edm::EDGetTokenT< reco::TrackCollection > m_tracksTag
Definition: DeDxHitInfoProducer.h:52
DeDxHitInfoProducer::lowPtTracksDeDxThreshold
const float lowPtTracksDeDxThreshold
Definition: DeDxHitInfoProducer.h:70
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
eostools.move
def move(src, dest)
Definition: eostools.py:511
edm::OrphanHandle
Definition: EDProductfwd.h:39
SiStripMatchedRecHit2D
Definition: SiStripMatchedRecHit2D.h:8
es_hardcode_cfi.hb
hb
Definition: es_hardcode_cfi.py:85
DeDxHitInfoProducer::shapetest
const bool shapetest
Definition: DeDxHitInfoProducer.h:66
DeDxHitInfoProducer::lowPtTracksPrescalePass
const unsigned int lowPtTracksPrescalePass
Definition: DeDxHitInfoProducer.h:68
DeDxHitInfoProducer::m_off
unsigned int m_off
Definition: DeDxHitInfoProducer.h:73
DeDxHitInfoProducer::minTrackHits
const unsigned int minTrackHits
Definition: DeDxHitInfoProducer.h:59
cond::uint64_t
unsigned long long uint64_t
Definition: Time.h:13
HLT_2018_cff.track
track
Definition: HLT_2018_cff.py:10352
DeDxHitInfoProducer::lowPtTracksEstimator
GenericTruncatedAverageDeDxEstimator lowPtTracksEstimator
Definition: DeDxHitInfoProducer.h:69
edm::helper::Filler
Definition: ValueMap.h:22
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
TrackerGeometry::offsetDU
unsigned int offsetDU(SubDetector sid) const
Definition: TrackerGeometry.h:72
edm::InputTag
Definition: InputTag.h:15
reco::TrackCollection
std::vector< Track > TrackCollection
collection of Tracks
Definition: TrackFwd.h:14
reco::DeDxHitInfo::addHit
void addHit(const float charge, const float pathlength, const DetId &detId, const LocalPoint &pos, const SiStripCluster &stripCluster)
Definition: DeDxHitInfo.h:89
DeDxHitInfoProducer::m_calibrationPath
const std::string m_calibrationPath
Definition: DeDxHitInfoProducer.h:64
TrackerSingleRecHit::detUnit
const GeomDetUnit * detUnit() const override
Definition: TrackerSingleRecHit.h:36