9 #ifndef DBScanAlg_DUNE35t_h 10 #define DBScanAlg_DUNE35t_h 19 #include "lardata/RecoObjects/Cluster3D.h" 75 typedef std::set<const reco::ClusterHit2D*, Hit2DSetCompare>
Hit2DSet;
80 typedef std::vector<std::unique_ptr<reco::ClusterHit3D> >
HitPairVector;
81 typedef std::list<std::unique_ptr<reco::ClusterHit3D> >
HitPairList;
106 void ClusterHitsDBScan(ViewToHitVectorMap& viewToHitVectorMap,
107 ViewToWireToHitSetMap& viewToWiretoHitSetMap,
108 HitPairList& hitPairList,
115 BUILDHITTOHITMAP = 1,
130 size_t BuildHitPairMap(ViewToHitVectorMap& viewToHitVectorMap, ViewToWireToHitSetMap& viewToWiretoHitSetMap, HitPairList& hitPairList)
const;
137 double hitWidthSclFctr = 1.,
138 size_t hitPairCntr = 0)
const;
154 int FindNumberInRange(
const Hit2DSet& hit2DSet,
const reco::ClusterHit3D& pair,
double range)
const;
170 void expandCluster(EpsPairNeighborhoodMapVec& nMap,
173 size_t minPts)
const;
178 size_t BuildNeighborhoodMap(HitPairList& hitPairList,
179 EpsPairNeighborhoodMapVec& epsPairNeighborhoodMapVec )
const;
std::vector< reco::ClusterHit2D > Hit2DVector
std::map< int, HitPairListPtr > HitPairClusterMap
std::map< int, HitVector > HitClusterMap
std::vector< EpsPairNeighborhoodMapPair > EpsPairNeighborhoodMapVec
std::map< const reco::ClusterHit3D *, EpsPairNeighborhoodPair > EpsPairNeighborhoodMap
enum geo::_plane_proj View_t
Enumerate the possible plane projections.
What follows are several highly useful typedefs which we want to expose to the outside world...
The data type to uniquely identify a Plane.
std::map< geo::View_t, WireToHitSetMap > ViewToWireToHitSetMap
DBScanAlg_DUNE35t class definiton.
Cluster finding and building.
TimeValues
enumerate the possible values for time checking if monitoring timing
std::pair< DBScanParams, EpsPairNeighborhoodList > EpsPairNeighborhoodPair
art framework interface to geometry description
a utility class for keeping track of the state of a hit for DBScan
std::map< geo::View_t, HitVector > HitVectorMap
void incrementCount(size_t count=1) const
virtual void reconfigure(fhicl::ParameterSet const &pset)
std::map< geo::View_t, HitVector > ViewToHitVectorMap
double getTimeToExecute(TimeValues index) const
If monitoring, recover the time to execute a particular function.
std::list< std::unique_ptr< reco::ClusterHit3D > > HitPairList
std::vector< std::unique_ptr< reco::ClusterHit3D > > HitPairVector
std::list< const reco::ClusterHit3D * > HitPairListPtr
The geometry of one entire detector, as served by art.
void clearVisited() const
size_t m_minPairPts
Data members to follow.
std::set< const reco::ClusterHit2D *, Hit2DSetCompare > Hit2DSet
std::vector< reco::ClusterHit2D * > HitVector
What follows are several highly useful typedefs which we want to expose to the outside world...
std::vector< float > m_timeVector
Declaration of signal hit object.
std::pair< const reco::ClusterHit3D *, EpsPairNeighborhoodPair > EpsPairNeighborhoodMapPair
std::vector< const reco::ClusterHit2D * > HitVectorConst
double m_numSigmaPeakTime
geo::Geometry * m_geometry
std::list< const reco::ClusterHit3D * > EpsPairNeighborhoodList
std::map< unsigned int, Hit2DSet > WireToHitSetMap