LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
SkeletonAlg.h
Go to the documentation of this file.
1 
7 #ifndef SkeletonAlg_h
8 #define SkeletonAlg_h
9 
10 // Framework Includes
11 namespace fhicl {
12  class ParameterSet;
13 }
14 
15 // LArSoft includes
17 
18 // std includes
19 #include <vector>
20 
21 //------------------------------------------------------------------------------------------------------------------------------------------
22 
23 namespace lar_cluster3d {
24 
28  class SkeletonAlg {
29  public:
35  SkeletonAlg(fhicl::ParameterSet const& pset);
36 
40  ~SkeletonAlg();
41 
45  void reconfigure(fhicl::ParameterSet const& pset);
46 
52  int FindMedialSkeleton(reco::HitPairListPtr& hitPairList) const;
53 
61  void GetSkeletonHits(const reco::HitPairListPtr& inputHitList,
62  reco::HitPairListPtr& skeletonHitList) const;
63 
70  void AverageSkeletonPositions(reco::HitPairListPtr& skeletonHitList) const;
71 
72  private:
77  double FindFirstAndLastWires(std::vector<const reco::ClusterHit3D*>& hitVec,
78  int planeToCheck,
79  int referenceWire,
80  double referenceTicks,
81  int& firstWire,
82  int& lastWire) const;
83 
86 
88  };
89 
90 } // namespace lar_cluster3d
91 #endif
Cluster3D class.
Definition: SkeletonAlg.h:28
parameter set interface
fhicl::ParameterSet m_pset
Definition: SkeletonAlg.h:87
std::list< const reco::ClusterHit3D * > HitPairListPtr
Definition: Cluster3D.h:326