LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
CBAlgoAngleCompat.h
Go to the documentation of this file.
1 
14 #ifndef RECOTOOL_CBALGOANGLECOMPAT_H
15 #define RECOTOOL_CBALGOANGLECOMPAT_H
16 
19 
20 class TH1F;
21 
22 namespace cmtool {
29 
30  public:
33 
35  virtual ~CBAlgoAngleCompat(){};
36 
38  virtual bool Bool(const ::cluster::ClusterParamsAlg& cluster1,
39  const ::cluster::ClusterParamsAlg& cluster2);
40 
42  void SetDebug(bool on) { _debug = on; }
43 
45  void SetAllow180Ambig(bool on) { _allow_180_ambig = on; }
46 
48  void SetAngleCut(double angle) { _max_allowed_2D_angle_diff = angle; }
49 
51  void SetUseOpeningAngle(bool on) { _use_opening_angle = on; }
52 
54  void SetMinHits(size_t n) { _minHits = n; }
55 
56  // TH1F* GetAngleDistHisto() const{ return angle_dist_histo; };
57 
58  protected:
59  bool _debug;
60 
65 
67  double _max_allowed_2D_angle_diff; //in degrees
68 
72 
73  size_t _minHits;
74 
77  };
78 
79 } // end namespace cmtool
80 
81 #endif
82  // end of doxygen group
Class def header for algorithm classes for CMergeManager.
virtual bool Bool(const ::cluster::ClusterParamsAlg &cluster1, const ::cluster::ClusterParamsAlg &cluster2)
Overloaded (from CBoolAlgoBase) Bool function.
void SetDebug(bool on)
Method to set debug mode.
TH1F * angle_dist_histo
Min Number of hits for cluster to be considered.
void SetUseOpeningAngle(bool on)
Method to set angle cut value to be based on opening angle.
void SetAllow180Ambig(bool on)
Method to set whether you allow angles to match with +/- 180 deg difference.
void SetAngleCut(double angle)
Method to set cut value in degrees for angle compatibility test.
virtual ~CBAlgoAngleCompat()
Default destructor.
CBAlgoAngleCompat()
Default constructor.
bool _allow_180_ambig
bool to suppress lots of output if you want
double _max_allowed_2D_angle_diff
hard shower-axis angle cutoff (only valid for _use_opening_angle==false)
Char_t n[5]
void SetMinHits(size_t n)
Set Minimum Number of Hits to consider Cluster.