CMS 3D CMS Logo

DeDxHitInfoProducer.h
Go to the documentation of this file.
1 #ifndef TrackRecoDeDx_DeDxHitInfoProducer_H
2 #define TrackRecoDeDx_DeDxHitInfoProducer_H
3 // user include files
4 
5 #include <memory>
6 
13 
17 
23 
26 
29 
30 //
31 // class declaration
32 //
33 
35 public:
36  explicit DeDxHitInfoProducer(const edm::ParameterSet&);
37  ~DeDxHitInfoProducer() override;
38 
39 private:
40  void beginRun(edm::Run const& run, const edm::EventSetup&) override;
41  void produce(edm::Event&, const edm::EventSetup&) override;
42 
44  void processHit(const TrackingRecHit* recHit,
45  const float trackMomentum,
46  const float cosine,
47  reco::DeDxHitInfo& hitDeDxInfo,
48  const LocalPoint& hitLocalPos);
49 
50  // ----------member data ---------------------------
51 
53 
54  const bool usePixel;
55  const bool useStrip;
56  const float MeVperADCPixel;
57  const float MeVperADCStrip;
58 
59  const unsigned int minTrackHits;
60  const float minTrackPt;
61  const float minTrackPtPrescale;
62  const float maxTrackEta;
63 
65  const bool useCalibration;
66  const bool shapetest;
67 
71 
72  std::vector<std::vector<float> > calibGains;
73  unsigned int m_off;
74 
76 
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  }
85 };
86 
87 #endif
DeDxHitInfoProducer::MeVperADCPixel
const float MeVperADCPixel
Definition: DeDxHitInfoProducer.h:56
DeDxHitInfoProducer::useCalibration
const bool useCalibration
Definition: DeDxHitInfoProducer.h:65
DDAxes::y
GenericTruncatedAverageDeDxEstimator.h
StripGeomDetUnit.h
TrackerGeometry.h
DeDxData.h
ESHandle.h
DeDxHitInfoProducer::DeDxHitInfoProducer
DeDxHitInfoProducer(const edm::ParameterSet &)
Definition: DeDxHitInfoProducer.cc:26
edm::Run
Definition: Run.h:45
edm::EDGetTokenT< reco::TrackCollection >
DeDxHitInfoProducer::useStrip
const bool useStrip
Definition: DeDxHitInfoProducer.h:55
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
DeDxHitInfoProducer::maxTrackEta
const float maxTrackEta
Definition: DeDxHitInfoProducer.h:62
EDProducer.h
DDAxes::x
DeDxHitInfoProducer::usePixel
const bool usePixel
Definition: DeDxHitInfoProducer.h:54
DeDxHitInfoProducer::lowPtTracksPrescaleFail
const unsigned int lowPtTracksPrescaleFail
Definition: DeDxHitInfoProducer.h:68
DeDxHitInfoProducer::~DeDxHitInfoProducer
~DeDxHitInfoProducer() override
Definition: DeDxHitInfoProducer.cc:52
DeDxHitInfoProducer::minTrackPtPrescale
const float minTrackPtPrescale
Definition: DeDxHitInfoProducer.h:61
rpcPointValidation_cfi.recHit
recHit
Definition: rpcPointValidation_cfi.py:7
MakerMacros.h
DeDxHitInfoProducer::minTrackPt
const float minTrackPt
Definition: DeDxHitInfoProducer.h:60
TrackDeDxHits.h
Track.h
DeDxHit.h
DeDxTools.h
DeDxHitInfoProducer
Definition: DeDxHitInfoProducer.h:34
DeDxHitInfoProducer::beginRun
void beginRun(edm::Run const &run, const edm::EventSetup &) override
Definition: DeDxHitInfoProducer.cc:55
edm::ESHandle< TrackerGeometry >
reco::btau::trackMomentum
Definition: TaggingVariable.h:41
Point3DBase< float, LocalTag >
TrajTrackAssociation.h
DeDxHitInfoProducer::MeVperADCStrip
const float MeVperADCStrip
Definition: DeDxHitInfoProducer.h:57
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
reco::DeDxHitInfo
Definition: DeDxHitInfo.h:14
edm::ParameterSet
Definition: ParameterSet.h:36
Event.h
DeDxHitInfo.h
DeDxHitInfoProducer::tkGeom
edm::ESHandle< TrackerGeometry > tkGeom
Definition: DeDxHitInfoProducer.h:75
edm::stream::EDProducer
Definition: EDProducer.h:38
GenericTruncatedAverageDeDxEstimator
Definition: GenericTruncatedAverageDeDxEstimator.h:9
edm::EventSetup
Definition: EventSetup.h:57
DeDxHitInfoProducer::makeCalibrationMap
void makeCalibrationMap(const TrackerGeometry &tkGeom)
DeDxHitInfoProducer::calibGains
std::vector< std::vector< float > > calibGains
Definition: DeDxHitInfoProducer.h:72
TrackingRecHit
Definition: TrackingRecHit.h:21
ValueMap.h
DeDxHitInfoProducer::m_tracksTag
edm::EDGetTokenT< reco::TrackCollection > m_tracksTag
Definition: DeDxHitInfoProducer.h:52
DeDxHitInfoProducer::lowPtTracksDeDxThreshold
const float lowPtTracksDeDxThreshold
Definition: DeDxHitInfoProducer.h:70
writedatasetfile.run
run
Definition: writedatasetfile.py:27
DeDxHitInfoProducer::produce
void produce(edm::Event &, const edm::EventSetup &) override
Definition: DeDxHitInfoProducer.cc:64
Frameworkfwd.h
PixelGeomDetUnit.h
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
DeDxHitInfoProducer::lowPtTracksEstimator
GenericTruncatedAverageDeDxEstimator lowPtTracksEstimator
Definition: DeDxHitInfoProducer.h:69
ParameterSet.h
edm::Event
Definition: Event.h:73
DeDxHitInfoProducer::m_calibrationPath
const std::string m_calibrationPath
Definition: DeDxHitInfoProducer.h:64
TrackerGeometry
Definition: TrackerGeometry.h:14