39 edm::LogInfo(
"EtaPhiRegionSeedFactory") <<
"Enter the EtaPhiRegionSeedFactory";
43 originradius_ = regionPSet.
getParameter<
double>(
"originRadius");
44 halflength_ = regionPSet.
getParameter<
double>(
"originHalfLength");
45 deltaEta_ = regionPSet.
getParameter<
double>(
"deltaEtaRegion");
46 deltaPhi_ = regionPSet.
getParameter<
double>(
"deltaPhiRegion");
47 useZvertex_ = regionPSet.
getParameter<
bool>(
"useZInVertex");
52 std::string hitsfactoryName = hitsfactoryPSet.
getParameter<std::string>(
"ComponentName");
58 hitsfactoryMode_ = hitsfactoryPSet.getUntrackedParameter<
int>(
"useOnDemandTracker");
66 creatorPSet.
addParameter<std::string>(
"propagator",
"PropagatorWithMaterial");
72 measurementTrackerName_ = conf.
getParameter<std::string>(
"measurementTrackerName") ;
76 delete combinatorialSeedGenerator;
102 vertices = *(h_vertices.
product());
104 LogDebug(
"SeedFilter") <<
"SeedFilter::seeds"
105 <<
"No vertex collection found: using beam-spot";
108 if (!vertices.empty() && useZvertex_) {
109 vtxPos =
GlobalPoint(vertices.front().x(), vertices.front().y(), vertices.front().z());
110 deltaZVertex = halflength_;
115 e.
getByLabel(beamSpotTag_,recoBeamSpotHandle);
118 double sigmaZ = recoBeamSpotHandle->sigmaZ();
119 double sigmaZ0Error = recoBeamSpotHandle->sigmaZ0Error();
120 double sq=
sqrt(sigmaZ*sigmaZ+sigmaZ0Error*sigmaZ0Error);
121 vtxPos =
GlobalPoint(BSPosition.x(), BSPosition.y(), BSPosition.z());
126 float energy = scRef->energy();
128 const GlobalPoint clusterPos(scRef->position().x(), scRef->position().y(), scRef->position().z());
148 measurementTrackerName_
150 combinatorialSeedGenerator->run(*seedColl, etaphiRegionMinus, e, setup);
152 for (
unsigned int i = 0;
i<seedColl->size(); ++
i)
153 output->push_back((*seedColl)[
i]);
162 fts = myFTS(&(*theMagField), clusterPos, vtxPos, energy, aChargep);
175 measurementTrackerName_
178 combinatorialSeedGenerator->run(*seedColl, etaphiRegionPlus, e, setup);
180 for (
unsigned int i = 0; i<seedColl->size(); ++
i){
189 bool isInCollection =
false;
190 for(
unsigned int j=0;
j<output->size(); ++
j) {
199 isInCollection =
true;
204 output->push_back((*seedColl)[i]);
T getParameter(std::string const &) const
Global3DPoint GlobalPoint
virtual bool sharesInput(const TrackingRecHit *other, SharedInputType what) const
std::vector< Vertex > VertexCollection
collection of Vertex objects
math::XYZPoint Point
point in the space
void seeds(edm::Event &, const edm::EventSetup &, const reco::SuperClusterRef &, TrajectorySeedCollection *)
std::vector< TrajectorySeed > TrajectorySeedCollection
recHitContainer::const_iterator const_iterator
void addParameter(std::string const &name, T const &value)
virtual std::vector< const TrackingRecHit * > recHits() const =0
Access to component RecHits (if any)
std::pair< const_iterator, const_iterator > range
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
GlobalVector momentum() const
T const * product() const
SeedFilter(const edm::ParameterSet &conf)
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
TkTrackingRegionsMargin< float > Margin
T get(const Candidate &c)