Go to the documentation of this file.
27 constexpr
static double INV12 = 1.0 / 12.0;
40 if (
config.exists(
"resolutionX")) {
44 if (
config.exists(
"resolutionY")) {
51 for (
const std::pair<unsigned int, const PSimHit*>& simHitIdPair : product->getSimHitIdPairs()) {
58 const double boundY = bounds.
length();
62 unsigned int retry = 0;
77 }
while (not bounds.
inside(recHitPosition));
88 product->addRecHit(
recHit, {simHitIdPair});
const RandomEngineAndDistribution & getRandomEngine() const
virtual float length() const =0
const TrackerGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
const Plane & surface() const
The nominal surface of the GeomDet.
std::shared_ptr< TrackingRecHitProduct > TrackingRecHitProductPtr
virtual bool inside(const Local3DPoint &) const =0
Determine if the point is inside the bounds.
const Bounds & bounds() const
#define DEFINE_EDM_PLUGIN(factory, type, name)
const TrackerGeometry & getTrackerGeometry() const
constexpr static double INV12
TrackingRecHitProductPtr process(TrackingRecHitProductPtr product) const override
TrackingRecHitStripGSPlugin(const std::string &name, const edm::ParameterSet &config, edm::ConsumesCollector &consumesCollector)
double gaussShoot(double mean=0.0, double sigma=1.0) const
Point3DBase< float, LocalTag > Local3DPoint