CMS 3D CMS Logo

TrackingRecHitNoSmearingPlugin.cc
Go to the documentation of this file.
4 
8 
10 
11 #include <string>
12 #include <iostream>
13 
15 private:
16  double _errorXX;
17  double _errorXY;
18  double _errorYY;
19 
20 public:
23  edm::ConsumesCollector& consumesCollector)
24  : TrackingRecHitAlgorithm(name, config, consumesCollector),
25  _errorXX(0.001 * 0.001),
26  _errorXY(0.0),
27  _errorYY(0.001 * 0.001) {
28  if (config.exists("errorXX")) {
29  _errorXX = config.getParameter<double>("errorXX");
30  }
31 
32  if (config.exists("errorXY")) {
33  _errorXY = config.getParameter<double>("errorXY");
34  }
35 
36  if (config.exists("errorYY")) {
37  _errorYY = config.getParameter<double>("errorYY");
38  }
39  }
40 
42  for (const std::pair<unsigned int, const PSimHit*>& simHitIdPair : product->getSimHitIdPairs()) {
43  const PSimHit* simHit = simHitIdPair.second;
44  const Local3DPoint& position = simHit->localPosition();
46  const GeomDet* geomDet = getTrackerGeometry().idToDetUnit(product->getDetId());
47 
48  //TODO: this is only a minimal example
50  position, //const LocalPoint &
51  error, //const LocalError &
52  *geomDet, //GeomDet const &idet
54  siPixel // since this is a dummy class anyway: pretend all hits are pixel hits (only effect: hits are defined in 2D (?))
55  );
56  product->addRecHit(recHit, {simHitIdPair});
57  }
58 
59  return product;
60  }
61 };
62 
GeomDet
Definition: GeomDet.h:27
fastTrackerRecHitType::siPixel
Definition: FastTrackerRecHit.h:17
TrackingRecHitNoSmearingPlugin::_errorYY
double _errorYY
Definition: TrackingRecHitNoSmearingPlugin.cc:18
TrackingRecHitProduct.h
TrackingRecHitNoSmearingPlugin
Definition: TrackingRecHitNoSmearingPlugin.cc:14
fastTrackerRecHitType
Definition: FastTrackerRecHit.h:15
relativeConstraints.error
error
Definition: relativeConstraints.py:53
rpcPointValidation_cfi.recHit
recHit
Definition: rpcPointValidation_cfi.py:7
TrackingRecHitNoSmearingPlugin::process
TrackingRecHitProductPtr process(TrackingRecHitProductPtr product) const override
Definition: TrackingRecHitNoSmearingPlugin.cc:41
TrackerGeometry::idToDetUnit
const TrackerGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
Definition: TrackerGeometry.cc:183
config
Definition: config.py:1
PSimHit.h
TrackingRecHitNoSmearingPlugin::_errorXX
double _errorXX
Definition: TrackingRecHitNoSmearingPlugin.cc:16
TrackingRecHitProductPtr
std::shared_ptr< TrackingRecHitProduct > TrackingRecHitProductPtr
Definition: TrackingRecHitProduct.h:47
rpcPointValidation_cfi.simHit
simHit
Definition: rpcPointValidation_cfi.py:24
TrackingRecHitNoSmearingPlugin::_errorXY
double _errorXY
Definition: TrackingRecHitNoSmearingPlugin.cc:17
Point3DBase< float, LocalTag >
DEFINE_EDM_PLUGIN
#define DEFINE_EDM_PLUGIN(factory, type, name)
Definition: PluginFactory.h:124
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
TrackingRecHitAlgorithm::getTrackerGeometry
const TrackerGeometry & getTrackerGeometry() const
Definition: TrackingRecHitAlgorithm.cc:42
edm::ParameterSet
Definition: ParameterSet.h:36
LocalError
Definition: LocalError.h:12
FastSingleTrackerRecHit.h
edmplugin::PluginFactory
Definition: PluginFactory.h:34
FastSingleTrackerRecHit
Definition: FastSingleTrackerRecHit.h:7
position
static int position[264][3]
Definition: ReadPGInfo.cc:289
TrackingRecHitNoSmearingPlugin::TrackingRecHitNoSmearingPlugin
TrackingRecHitNoSmearingPlugin(const std::string &name, const edm::ParameterSet &config, edm::ConsumesCollector &consumesCollector)
Definition: TrackingRecHitNoSmearingPlugin.cc:21
TrackingRecHitAlgorithmFactory.h
TrackingRecHitAlgorithm.h
DetId.h
TrackingRecHitAlgorithm
Definition: TrackingRecHitAlgorithm.h:26
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
ParameterSet.h
PSimHit
Definition: PSimHit.h:15
edm::ConsumesCollector
Definition: ConsumesCollector.h:39