7 #ifndef HoughSeedFinderAlg_h 8 #define HoughSeedFinderAlg_h 88 typedef std::pair<int, int>
BinIndex;
93 void HoughRegionQuery(BinIndex& curBin, RhoThetaAccumulatorBinMap& rhoThetaAccumulatorBinMap, HoughCluster& neighborPts,
size_t threshold)
const;
96 HoughCluster& neighborPts,
97 HoughCluster& houghCluster,
98 RhoThetaAccumulatorBinMap& rhoThetaAccumulatorBinMap,
99 size_t threshold)
const;
104 RhoThetaAccumulatorBinMap& rhoThetaMap,
105 HoughClusterList& clusterList)
const;
112 void LineFit2DHits(std::set<const reco::ClusterHit2D*>& hitList,
double XOrigin, TVector3& Pos, TVector3& Dir,
double& ChiDOF)
const;
133 mutable std::vector<TVirtualPad*>
m_Pads;
void LineFit2DHits(std::set< const reco::ClusterHit2D * > &hitList, double XOrigin, TVector3 &Pos, TVector3 &Dir, double &ChiDOF) const
std::vector< SeedHitPairListPair > SeedHitPairListPairVec
void findHitGaps(reco::HitPairListPtr &inputHitList, reco::HitPairListPtr &outputList) const
Using Principal Components Axis, look for gaps in a list of 3D hits.
std::vector< TVirtualPad * > m_Pads
View pads in current canvas.
virtual void reconfigure(fhicl::ParameterSet const &pset)
a handler for the case where the algorithm control parameters are to be reset
HoughSeedFinderAlg class.
HoughSeedFinderAlg(fhicl::ParameterSet const &pset)
Constructor.
std::list< HitPairListPtr > HitPairListPtrList
void findHoughClusters(const reco::HitPairListPtr &inputHits, reco::PrincipalComponents &pca, int &nLoops, RhoThetaAccumulatorBinMap &rhoThetaMap, HoughClusterList &clusterList) const
void expandHoughCluster(BinIndex &curBin, HoughCluster &neighborPts, HoughCluster &houghCluster, RhoThetaAccumulatorBinMap &rhoThetaAccumulatorBinMap, size_t threshold) const
This is intended to define an interface to all Seed finder algorithms employed by the 3D clustering...
void HoughRegionQuery(BinIndex &curBin, RhoThetaAccumulatorBinMap &rhoThetaAccumulatorBinMap, HoughCluster &neighborPts, size_t threshold) const
std::list< HoughCluster > HoughClusterList
std::list< const reco::ClusterHit3D * > HitPairListPtr
PrincipalComponentsAlg m_pcaAlg
The geometry of one entire detector, as served by art.
geo::Geometry * m_geometry
bool buildSeed(reco::HitPairListPtr &seed3DHits, SeedHitPairListPair &seedHitPair) const
Given a list of candidate "seed" 3D hits, build the seed and get associated unique 2D hits...
std::map< BinIndex, AccumulatorBin > RhoThetaAccumulatorBinMap
This header file defines the interface to a principal components analysis designed to be used within ...
virtual bool findTrackHits(reco::HitPairListPtr &hitPairListPtr, reco::PrincipalComponents &inputPCA, reco::HitPairListPtrList &hitPairListPtrList) const
Given the list of hits this will return the sets of hits which belong on the same line...
std::list< BinIndex > HoughCluster
virtual ~HoughSeedFinderAlg()
Destructor.
std::pair< recob::Seed, reco::HitPairListPtr > SeedHitPairListPair
virtual bool findTrackSeeds(reco::HitPairListPtr &hitPairListPtr, reco::PrincipalComponents &inputPCA, SeedHitPairListPairVec &seedHitPairVec) const
Given the list of hits this will search for candidate Seed objects and return them.
std::pair< int, int > BinIndex
std::vector< std::unique_ptr< TCanvas > > m_Canvases
Graphical trace canvases.
art framework interface to geometry description