24 :_conf(conf),seedCollection(0),
25 hitsfactoryPSet(conf.getParameter<edm::
ParameterSet>(
"OrderedHitsFactoryPSet")),
26 creatorPSet(conf.getParameter<edm::
ParameterSet>(
"SeedCreatorPSet")),
27 regfactoryPSet(conf.getParameter<edm::
ParameterSet>(
"RegionFactoryPSet")),
28 theClusterCheck(conf.getParameter<edm::
ParameterSet>(
"ClusterCheckPSet"), std::move(iC)),
29 SeedComparitorPSet(conf.getParameter<edm::
ParameterSet>(
"SeedComparitorPSet")),
31 theSilentOnClusterCheck(conf.getParameter<edm::
ParameterSet>(
"ClusterCheckPSet").getUntrackedParameter<bool>(
"silentClusterCheck",
false)){
73 edm::LogError(
"TooManyClusters") <<
"Found too many clusters (" << clustsOrZero <<
"), bailing out.\n";
89 std::cout <<
"Running PhotonConversionTrajectorySeedProducerFromQuadrupletsAlgo" <<std::endl;
95 ss <<
"\n++++++++++++++++++\n";
100 edm::LogInfo(
"debugTrajSeedFromQuadruplets") << ss.str();
123 ,primaryVertex.
xError()*10
124 ,primaryVertex.
zError()*10
129 ss <<
"[PrintRegion] " << region.print() << std::endl;
146 unsigned int nHitss = hitss.
size();
149 ss <<
"\n nHitss " << nHitss <<
"\n";
155 unsigned int iHits=0, jHits=1;
161 std::vector<Quad> quadVector;
164 for (; iHits < nHitss && jHits < nHitss; iHits+=2 , jHits+=2) {
180 edm::LogError(
"SeedingConversion") <<
" Problem in the Quad Seed creator " <<er.
what()<<std::endl;
182 edm::LogError(
"SeedingConversion") <<
" Problem in the Quad Seed creator " <<er.what()<<std::endl;
edm::Handle< reco::VertexCollection > vertexHandle
virtual char const * what() const
T getParameter(std::string const &) const
CombinedHitQuadrupletGeneratorForPhotonConversion * theHitsGenerator
double zError() const
error on z
Global3DPoint GlobalPoint
bool theSilentOnClusterCheck
std::vector< Vertex > VertexCollection
collection of Vertex objects
virtual unsigned int size() const =0
edm::ParameterSet regfactoryPSet
const edm::EventSetup * myEsetup
const Point & position() const
position
reco::Vertex primaryVertex
const edm::Event * myEvent
edm::ParameterSet QuadCutPSet
const OrderedHitPairs & run(const TrackingRegion ®ion, const edm::Event &ev, const edm::EventSetup &es)
std::vector< TrajectorySeed > TrajectorySeedCollection
const edm::ParameterSet _conf
size_t tooManyClusters(const edm::Event &e) const
~PhotonConversionTrajectorySeedProducerFromQuadrupletsAlgo()
PhotonConversionTrajectorySeedProducerFromQuadrupletsAlgo(const edm::ParameterSet &, edm::ConsumesCollector &&iC)
TrajectorySeedCollection * seedCollection
void print(std::stringstream &ss, const SiStripCluster &clus)
edm::ParameterSet hitsfactoryPSet
How EventSelector::AcceptEvent() decides whether to accept an event for output otherwise it is excluding the probing of A single or multiple positive and the trigger will pass if any such matching triggers are PASS or EXCEPTION[A criterion thatmatches no triggers at all is detected and causes a throw.] A single negative with an expectation of appropriate bit checking in the decision and the trigger will pass if any such matching triggers are FAIL or EXCEPTION A wildcarded negative criterion that matches more than one trigger in the trigger but the state exists so we define the behavior If all triggers are the negative crieriion will lead to accepting the event(this again matches the behavior of"!*"before the partial wildcard feature was incorporated).The per-event"cost"of each negative criterion with multiple relevant triggers is about the same as!*was in the past
SeedForPhotonConversionFromQuadruplets * theSeedCreator
GlobalTrackingRegionProducerFromBeamSpot * theRegionProducer
void analyze(const edm::Event &event, const edm::EventSetup &setup)
double xError() const
error on x
edm::ParameterSet creatorPSet
const TrajectorySeed * trajectorySeed(TrajectorySeedCollection &seedCollection, const SeedingHitSet &phits, const SeedingHitSet &mhits, const TrackingRegion ®ion, const edm::EventSetup &es, std::stringstream &ss, std::vector< Quad > &quadV, edm::ParameterSet &SeedComparitorPSet, edm::ParameterSet &QuadCutPSet)
return(e1-e2)*(e1-e2)+dp *dp
bool inspect(const TrackingRegion ®ion)
virtual std::vector< TrackingRegion * > regions(const edm::Event &ev, const edm::EventSetup &) const
edm::EDGetTokenT< reco::VertexCollection > token_vertex
edm::ParameterSet SeedComparitorPSet
volatile std::atomic< bool > shutdown_flag false
void setup(std::vector< TH2F > &depth, std::string name, std::string units="")
ClusterChecker theClusterCheck