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 
14 
18 
24 
27 
30 
31 //
32 // class declaration
33 //
34 
36 public:
37  explicit DeDxHitInfoProducer(const edm::ParameterSet&);
38  ~DeDxHitInfoProducer() override;
39 
40 private:
41  void beginRun(edm::Run const& run, const edm::EventSetup&) override;
42  void produce(edm::Event&, const edm::EventSetup&) override;
43 
45  void processHit(const TrackingRecHit* recHit,
46  const float trackMomentum,
47  const float cosine,
48  reco::DeDxHitInfo& hitDeDxInfo,
49  const LocalPoint& hitLocalPos);
50 
51  // ----------member data ---------------------------
52 
54 
55  const bool usePixel;
56  const bool useStrip;
57  const float MeVperADCPixel;
58  const float MeVperADCStrip;
59 
60  const unsigned int minTrackHits;
61  const float minTrackPt;
62  const float minTrackPtPrescale;
63  const float maxTrackEta;
64 
66  const bool useCalibration;
67  const bool shapetest;
68 
72 
73  std::vector<std::vector<float> > calibGains;
74  unsigned int m_off;
75 
78 
80  uint64_t x = state[0];
81  uint64_t const y = state[1];
82  state[0] = y;
83  x ^= x << 23; // a
84  state[1] = x ^ y ^ (x >> 17) ^ (y >> 26); // b, c
85  return state[1] + y;
86  }
87 };
88 
89 #endif
DeDxHitInfoProducer::MeVperADCPixel
const float MeVperADCPixel
Definition: DeDxHitInfoProducer.h:57
DeDxHitInfoProducer::useCalibration
const bool useCalibration
Definition: DeDxHitInfoProducer.h:66
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:56
DeDxHitInfoProducer::processHit
void processHit(const TrackingRecHit *recHit, const float trackMomentum, const float cosine, reco::DeDxHitInfo &hitDeDxInfo, const LocalPoint &hitLocalPos)
Definition: DeDxHitInfoProducer.cc:161
DeDxHitInfoProducer::xorshift128p
uint64_t xorshift128p(uint64_t state[2])
Definition: DeDxHitInfoProducer.h:79
DeDxHitInfoProducer::maxTrackEta
const float maxTrackEta
Definition: DeDxHitInfoProducer.h:63
EDProducer.h
DDAxes::x
DeDxHitInfoProducer::usePixel
const bool usePixel
Definition: DeDxHitInfoProducer.h:55
DeDxHitInfoProducer::lowPtTracksPrescaleFail
const unsigned int lowPtTracksPrescaleFail
Definition: DeDxHitInfoProducer.h:69
DeDxHitInfoProducer::~DeDxHitInfoProducer
~DeDxHitInfoProducer() override
Definition: DeDxHitInfoProducer.cc:53
DeDxHitInfoProducer::minTrackPtPrescale
const float minTrackPtPrescale
Definition: DeDxHitInfoProducer.h:62
ESGetToken.h
rpcPointValidation_cfi.recHit
recHit
Definition: rpcPointValidation_cfi.py:7
DeDxHitInfoProducer::m_tkGeomToken
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > m_tkGeomToken
Definition: DeDxHitInfoProducer.h:77
MakerMacros.h
DeDxHitInfoProducer::minTrackPt
const float minTrackPt
Definition: DeDxHitInfoProducer.h:61
TrackDeDxHits.h
Track.h
DeDxHit.h
DeDxTools.h
DeDxHitInfoProducer
Definition: DeDxHitInfoProducer.h:35
DeDxHitInfoProducer::beginRun
void beginRun(edm::Run const &run, const edm::EventSetup &) override
Definition: DeDxHitInfoProducer.cc:56
edm::ESHandle< TrackerGeometry >
reco::btau::trackMomentum
Definition: TaggingVariable.h:41
Point3DBase< float, LocalTag >
TrajTrackAssociation.h
DeDxHitInfoProducer::MeVperADCStrip
const float MeVperADCStrip
Definition: DeDxHitInfoProducer.h:58
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
reco::DeDxHitInfo
Definition: DeDxHitInfo.h:14
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
DeDxHitInfo.h
DeDxHitInfoProducer::tkGeom
edm::ESHandle< TrackerGeometry > tkGeom
Definition: DeDxHitInfoProducer.h:76
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)
edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord >
DeDxHitInfoProducer::calibGains
std::vector< std::vector< float > > calibGains
Definition: DeDxHitInfoProducer.h:73
TrackingRecHit
Definition: TrackingRecHit.h:21
ValueMap.h
DeDxHitInfoProducer::m_tracksTag
edm::EDGetTokenT< reco::TrackCollection > m_tracksTag
Definition: DeDxHitInfoProducer.h:53
DeDxHitInfoProducer::lowPtTracksDeDxThreshold
const float lowPtTracksDeDxThreshold
Definition: DeDxHitInfoProducer.h:71
writedatasetfile.run
run
Definition: writedatasetfile.py:27
DeDxHitInfoProducer::produce
void produce(edm::Event &, const edm::EventSetup &) override
Definition: DeDxHitInfoProducer.cc:65
RunInfoPI::state
state
Definition: RunInfoPayloadInspectoHelper.h:16
Frameworkfwd.h
PixelGeomDetUnit.h
DeDxHitInfoProducer::shapetest
const bool shapetest
Definition: DeDxHitInfoProducer.h:67
DeDxHitInfoProducer::lowPtTracksPrescalePass
const unsigned int lowPtTracksPrescalePass
Definition: DeDxHitInfoProducer.h:69
DeDxHitInfoProducer::m_off
unsigned int m_off
Definition: DeDxHitInfoProducer.h:74
DeDxHitInfoProducer::minTrackHits
const unsigned int minTrackHits
Definition: DeDxHitInfoProducer.h:60
cond::uint64_t
unsigned long long uint64_t
Definition: Time.h:13
DeDxHitInfoProducer::lowPtTracksEstimator
GenericTruncatedAverageDeDxEstimator lowPtTracksEstimator
Definition: DeDxHitInfoProducer.h:70
ParameterSet.h
edm::Event
Definition: Event.h:73
DeDxHitInfoProducer::m_calibrationPath
const std::string m_calibrationPath
Definition: DeDxHitInfoProducer.h:65
TrackerGeometry
Definition: TrackerGeometry.h:14