HitSelector.h
Go to the documentation of this file.
1 /// \file HitSelector.h
2 /// \brief Class to perform operations needed to select hits and pass them to a cluster.
3 /// \author andrzej.szelc@yale.edu
4 
5 #ifndef EVD_HITSELECTOR_H
6 #define EVD_HITSELECTOR_H
7 
8 #include <vector>
9 
12 
14 
15 namespace recob {
16  class Hit;
17 }
18 
19 namespace util {
20  class PxLine;
21 }
22 
23 /// Class to perform operations needed to select hits and pass them to InfoTransfer.
24 namespace evd {
25 
26  class HitSelector {
27  public:
28  HitSelector();
29 
30  void SaveHits(const art::Event& evt,
31  unsigned int plane,
32  double x,
33  double y,
34  double x1,
35  double y1,
36  double distance,
37  bool good_plane = true);
38 
39  double SaveSeedLines(const art::Event& evt,
40  std::vector<util::PxLine> seedline,
41  double distance);
42 
43  void ChangeHit(const art::Event& evt, unsigned int plane, double x, double y);
44 
45  std::vector<const recob::Hit*> GetSelectedHits(unsigned int plane);
46  std::vector<art::Ptr<recob::Hit>> GetSelectedHitPtrs(unsigned int plane);
47 
48  void ClearHitList(unsigned int plane);
49 
50  std::vector<recob::Seed>& SeedVector();
51 
52  private:
53  std::vector<recob::Seed> fSeedVector;
54 
55  std::vector<std::vector<double>> starthitout;
56  std::vector<std::vector<double>> endhitout;
57  };
58 }
59 
60 #endif
61 ////////////////////////////////////////////////////////////////////////
Namespace for general, non-LArSoft-specific utilities.
Reconstruction base classes.
std::vector< std::vector< double > > starthitout
Definition: HitSelector.h:55
std::vector< art::Ptr< recob::Seed > > SeedVector
LArSoft includes.
Definition: InfoTransfer.h:33
double distance(double x1, double y1, double z1, double x2, double y2, double z2)
std::vector< recob::Seed > fSeedVector
Definition: HitSelector.h:53
list x
Definition: train.py:276
TCEvent evt
Definition: DataStructs.cxx:7
std::vector< std::vector< double > > endhitout
Definition: HitSelector.h:56