LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
DBScanAlg class definiton. More...
Public Types | |
enum | TimeValues { BUILDTHREEDHITS = 0, BUILDHITTOHITMAP = 1, RUNDBSCAN = 2, BUILDCLUSTERINFO = 3, PATHFINDING = 4, NUMTIMEVALUES } |
enumerate the possible values for time checking if monitoring timing More... | |
Public Member Functions | |
DBScanAlg (fhicl::ParameterSet const &pset) | |
Constructor. More... | |
~DBScanAlg () | |
Destructor. More... | |
void | configure (const fhicl::ParameterSet &) override |
Interface for configuring the particular algorithm tool. More... | |
void | Cluster3DHits (reco::HitPairList &hitPairList, reco::ClusterParametersList &clusterParametersList) const override |
Given a set of recob hits, run DBscan to form 3D clusters. More... | |
void | Cluster3DHits (reco::HitPairListPtr &hitPairList, reco::ClusterParametersList &clusterParametersList) const override |
Given a set of recob hits, run DBscan to form 3D clusters. More... | |
float | getTimeToExecute (IClusterAlg::TimeValues index) const override |
If monitoring, recover the time to execute a particular function. More... | |
Private Member Functions | |
void | expandCluster (const kdTree::KdTreeNode &, kdTree::CandPairList &, reco::ClusterParameters &, size_t) const |
the main routine for DBScan More... | |
Private Attributes | |
bool | m_enableMonitoring |
Data members to follow. More... | |
size_t | m_minPairPts |
std::vector< float > | m_timeVector |
std::unique_ptr< lar_cluster3d::IClusterParametersBuilder > | m_clusterBuilder |
Common cluster builder tool. More... | |
kdTree | m_kdTree |
DBScanAlg class definiton.
Definition at line 34 of file DBScanAlg_tool.cc.
|
inherited |
enumerate the possible values for time checking if monitoring timing
Enumerator | |
---|---|
BUILDTHREEDHITS | |
BUILDHITTOHITMAP | |
RUNDBSCAN | |
BUILDCLUSTERINFO | |
PATHFINDING | |
NUMTIMEVALUES |
Definition at line 61 of file IClusterAlg.h.
|
explicit |
Constructor.
pset |
Definition at line 97 of file DBScanAlg_tool.cc.
References configure().
lar_cluster3d::DBScanAlg::~DBScanAlg | ( | ) |
|
overridevirtual |
Given a set of recob hits, run DBscan to form 3D clusters.
hitPairList | The input list of 3D hits to run clustering on |
clusterParametersList | A list of cluster objects (parameters from associated hits) |
Driver for processing input 2D hits, transforming to 3D hits and building lists of associated 3D hits (candidate 3D clusters)
Implements lar_cluster3d::IClusterAlg.
Definition at line 135 of file DBScanAlg_tool.cc.
References reco::ClusterParameters::addHit3D(), lar_cluster3d::IClusterAlg::BUILDCLUSTERINFO, lar_cluster3d::IClusterAlg::BUILDHITTOHITMAP, lar_cluster3d::kdTree::BuildKdTree(), reco::ClusterHit3D::CLUSTERATTACHED, reco::ClusterHit3D::CLUSTERNOISE, reco::ClusterHit3D::CLUSTERVISITED, expandCluster(), lar_cluster3d::kdTree::FindNearestNeighbors(), lar_cluster3d::kdTree::getTimeToExecute(), m_clusterBuilder, m_enableMonitoring, m_kdTree, m_minPairPts, m_timeVector, lar_cluster3d::IClusterAlg::NUMTIMEVALUES, and lar_cluster3d::IClusterAlg::RUNDBSCAN.
|
overridevirtual |
Given a set of recob hits, run DBscan to form 3D clusters.
hitPairList | The input list of 3D hits to run clustering on |
clusterParametersList | A list of cluster objects (parameters from associated hits) |
Driver for processing input 2D hits, transforming to 3D hits and building lists of associated 3D hits (candidate 3D clusters)
Implements lar_cluster3d::IClusterAlg.
Definition at line 214 of file DBScanAlg_tool.cc.
References reco::ClusterParameters::addHit3D(), lar_cluster3d::IClusterAlg::BUILDCLUSTERINFO, lar_cluster3d::IClusterAlg::BUILDHITTOHITMAP, lar_cluster3d::kdTree::BuildKdTree(), reco::ClusterHit3D::CLUSTERATTACHED, reco::ClusterHit3D::CLUSTERNOISE, reco::ClusterHit3D::CLUSTERVISITED, expandCluster(), lar_cluster3d::kdTree::FindNearestNeighbors(), lar_cluster3d::kdTree::getTimeToExecute(), m_clusterBuilder, m_enableMonitoring, m_kdTree, m_minPairPts, m_timeVector, lar_cluster3d::IClusterAlg::NUMTIMEVALUES, and lar_cluster3d::IClusterAlg::RUNDBSCAN.
|
overridevirtual |
Interface for configuring the particular algorithm tool.
ParameterSet | The input set of parameters for configuration |
Implements lar_cluster3d::IClusterAlg.
Definition at line 108 of file DBScanAlg_tool.cc.
References fhicl::ParameterSet::get(), m_clusterBuilder, m_enableMonitoring, m_kdTree, m_minPairPts, fhicl::ParameterSet::put_or_replace(), and geo::GeometryCore::WirePitch().
Referenced by DBScanAlg().
|
private |
the main routine for DBScan
Definition at line 293 of file DBScanAlg_tool.cc.
References reco::ClusterParameters::addHit3D(), reco::ClusterHit3D::CLUSTERATTACHED, reco::ClusterHit3D::CLUSTERVISITED, DEFINE_ART_CLASS_TOOL, lar_cluster3d::kdTree::FindNearestNeighbors(), reco::ClusterHit3D::getStatusBits(), m_kdTree, and reco::ClusterHit3D::setStatusBit().
Referenced by Cluster3DHits(), and getTimeToExecute().
|
inlineoverridevirtual |
If monitoring, recover the time to execute a particular function.
Implements lar_cluster3d::IClusterAlg.
Definition at line 71 of file DBScanAlg_tool.cc.
References expandCluster(), and m_timeVector.
|
private |
Common cluster builder tool.
Definition at line 93 of file DBScanAlg_tool.cc.
Referenced by Cluster3DHits(), and configure().
|
private |
Data members to follow.
Definition at line 88 of file DBScanAlg_tool.cc.
Referenced by Cluster3DHits(), and configure().
|
private |
Definition at line 94 of file DBScanAlg_tool.cc.
Referenced by Cluster3DHits(), configure(), and expandCluster().
|
private |
Definition at line 89 of file DBScanAlg_tool.cc.
Referenced by Cluster3DHits(), and configure().
|
mutableprivate |
Definition at line 90 of file DBScanAlg_tool.cc.
Referenced by Cluster3DHits(), and getTimeToExecute().