![]() |
LArSoft
v10_06_00
Liquid Argon Software toolkit - https://larsoft.org/
|
SpacePointHit3DBuilder class definiton. More...
Public Types | |
| enum | TimeValues { COLLECTARTHITS = 0, BUILDTHREEDHITS = 1, BUILDNEWHITS = 2, NUMTIMEVALUES } |
| enumerate the possible values for time checking if monitoring timing More... | |
| using | RecobHitToPtrMap = std::unordered_map< const recob::Hit *, art::Ptr< recob::Hit >> |
| Defines a structure mapping art representation to internal. More... | |
Public Member Functions | |
| SpacePointHit3DBuilder (fhicl::ParameterSet const &pset) | |
| Constructor. More... | |
| void | produces (art::ProducesCollector &) override |
| Each algorithm may have different objects it wants "produced" so use this to let the top level producer module "know" what it is outputting. More... | |
| void | Hit3DBuilder (art::Event &evt, reco::HitPairList &hitPairList, RecobHitToPtrMap &) override |
| Given a set of recob hits, run DBscan to form 3D clusters. More... | |
| float | getTimeToExecute (IHit3DBuilder::TimeValues index) const override |
| If monitoring, recover the time to execute a particular function. More... | |
Private Types | |
| using | Hit2DVector = std::vector< reco::ClusterHit2D > |
Private Member Functions | |
| void | clear () |
| clear the tuple vectors before processing next event More... | |
| float | chargeIntegral (float, float, float, int, int) const |
| Perform charge integration between limits. More... | |
Private Attributes | |
| art::InputTag | fSpacePointProducerLabel |
| Data members to follow. More... | |
| art::InputTag | fHitProducerLabel |
| bool | fDoWireAssns |
| bool | fDoRawDigitAssns |
| float | m_maxHit3DChiSquare |
| Provide ability to select hits based on "chi square". More... | |
| bool | m_outputHistograms |
| Take the time to create and fill some histograms for diagnostics. More... | |
| bool | fEnableMonitoring |
| std::vector< float > | fTimeVector |
| TTree * | m_tupleTree |
| output analysis tree More... | |
| std::vector< float > | m_deltaTimeVec |
| std::vector< float > | m_chiSquare3DVec |
| std::vector< float > | m_maxPullVec |
| std::vector< float > | m_overlapFractionVec |
| std::vector< float > | m_overlapRangeVec |
| std::vector< float > | m_maxSideVecVec |
| std::vector< float > | m_pairWireDistVec |
| std::vector< float > | m_smallChargeDiffVec |
| std::vector< int > | m_smallIndexVec |
| std::vector< float > | m_qualityMetricVec |
| std::vector< float > | m_spacePointChargeVec |
| std::vector< float > | m_hitAsymmetryVec |
| Hit2DVector | m_clusterHit2DMasterVec |
| const geo::Geometry * | fGeometry |
| const geo::WireReadoutGeom * | fWireReadoutGeom |
SpacePointHit3DBuilder class definiton.
Definition at line 57 of file SpacePointHit3DBuilder_tool.cc.
|
private |
Definition at line 99 of file SpacePointHit3DBuilder_tool.cc.
|
inherited |
Defines a structure mapping art representation to internal.
Definition at line 43 of file IHit3DBuilder.h.
|
inherited |
enumerate the possible values for time checking if monitoring timing
| Enumerator | |
|---|---|
| COLLECTARTHITS | |
| BUILDTHREEDHITS | |
| BUILDNEWHITS | |
| NUMTIMEVALUES | |
Definition at line 56 of file IHit3DBuilder.h.
|
explicit |
Constructor.
| pset |
Definition at line 137 of file SpacePointHit3DBuilder_tool.cc.
References clear(), fDoRawDigitAssns, fDoWireAssns, fEnableMonitoring, fGeometry, fHitProducerLabel, fSpacePointProducerLabel, fWireReadoutGeom, Get, fhicl::ParameterSet::get(), m_chiSquare3DVec, m_deltaTimeVec, m_hitAsymmetryVec, m_maxHit3DChiSquare, m_maxPullVec, m_maxSideVecVec, m_outputHistograms, m_overlapFractionVec, m_overlapRangeVec, m_pairWireDistVec, m_qualityMetricVec, m_smallChargeDiffVec, m_smallIndexVec, m_spacePointChargeVec, and m_tupleTree.
|
private |
Perform charge integration between limits.
Definition at line 553 of file SpacePointHit3DBuilder_tool.cc.
References DEFINE_ART_CLASS_TOOL.
Referenced by getTimeToExecute(), and Hit3DBuilder().
|
private |
clear the tuple vectors before processing next event
Definition at line 186 of file SpacePointHit3DBuilder_tool.cc.
References m_chiSquare3DVec, m_deltaTimeVec, m_hitAsymmetryVec, m_maxPullVec, m_maxSideVecVec, m_overlapFractionVec, m_overlapRangeVec, m_pairWireDistVec, m_qualityMetricVec, m_smallChargeDiffVec, m_smallIndexVec, and m_spacePointChargeVec.
Referenced by getTimeToExecute(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
inlineoverridevirtual |
If monitoring, recover the time to execute a particular function.
Implements lar_cluster3d::IHit3DBuilder.
Definition at line 83 of file SpacePointHit3DBuilder_tool.cc.
References chargeIntegral(), clear(), and fTimeVector.
|
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) |
Recover the 2D hits from art and fill out the local data structures for the 3D clustering
Implements lar_cluster3d::IHit3DBuilder.
Definition at line 202 of file SpacePointHit3DBuilder_tool.cc.
References util::abs(), lar_cluster3d::IHit3DBuilder::BUILDTHREEDHITS, recob::Hit::Channel(), geo::WireReadoutGeom::ChannelToWire(), chargeIntegral(), clear(), geo::CryostatID::Cryostat, fDoRawDigitAssns, fDoWireAssns, fEnableMonitoring, fGeometry, fHitProducerLabel, fSpacePointProducerLabel, fTimeVector, fWireReadoutGeom, art::Ptr< T >::get(), art::ProductRetriever::getByLabel(), reco::ClusterHit2D::getHit(), reco::ClusterHit2D::getStatusBits(), reco::ClusterHit2D::getTimeTicks(), art::Handle< T >::isValid(), geo::kCollection, m_chiSquare3DVec, m_clusterHit2DMasterVec, m_deltaTimeVec, m_hitAsymmetryVec, m_maxPullVec, m_outputHistograms, m_overlapFractionVec, m_overlapRangeVec, m_qualityMetricVec, m_smallChargeDiffVec, m_smallIndexVec, m_spacePointChargeVec, m_tupleTree, geo::GeometryCore::Ncryostats(), geo::GeometryCore::NTPC(), lar_cluster3d::IHit3DBuilder::NUMTIMEVALUES, recob::Hit::PeakTime(), geo::PlaneID::Plane, recob::HitRefinerAssociator::put_into(), recob::Hit::RMS(), reco::ClusterHit2D::setStatusBit(), reco::ClusterHit2D::SHAREDINTRIPLET, geo::TPCID::TPC, detinfo::trigger_offset(), recob::HitRefinerAssociator::use_hits(), reco::ClusterHit2D::USEDINTRIPLET, weight, geo::WireID::Wire, reco::ClusterHit2D::WireID(), recob::Hit::WireID(), geo::WireID::WireID(), and recob::SpacePoint::XYZ().
|
overridevirtual |
Each algorithm may have different objects it wants "produced" so use this to let the top level producer module "know" what it is outputting.
Implements lar_cluster3d::IHit3DBuilder.
Definition at line 176 of file SpacePointHit3DBuilder_tool.cc.
References fDoRawDigitAssns, fDoWireAssns, and art::ProducesCollector::produces().
|
private |
Definition at line 107 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder(), produces(), and SpacePointHit3DBuilder().
|
private |
Definition at line 106 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder(), produces(), and SpacePointHit3DBuilder().
|
private |
Definition at line 111 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder(), and SpacePointHit3DBuilder().
|
private |
Definition at line 133 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder(), and SpacePointHit3DBuilder().
|
private |
Definition at line 105 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder(), and SpacePointHit3DBuilder().
|
private |
Data members to follow.
Definition at line 104 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 112 of file SpacePointHit3DBuilder_tool.cc.
Referenced by getTimeToExecute(), and Hit3DBuilder().
|
private |
Definition at line 134 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 118 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 131 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder().
|
mutableprivate |
Definition at line 117 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 128 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
private |
Provide ability to select hits based on "chi square".
Definition at line 108 of file SpacePointHit3DBuilder_tool.cc.
Referenced by SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 119 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 122 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), and SpacePointHit3DBuilder().
|
private |
Take the time to create and fill some histograms for diagnostics.
Definition at line 109 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 120 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 121 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 123 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 126 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 124 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 125 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
mutableprivate |
Definition at line 127 of file SpacePointHit3DBuilder_tool.cc.
Referenced by clear(), Hit3DBuilder(), and SpacePointHit3DBuilder().
|
private |
output analysis tree
Definition at line 115 of file SpacePointHit3DBuilder_tool.cc.
Referenced by Hit3DBuilder(), and SpacePointHit3DBuilder().