LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "CBAlgoAngleCompat.h"
Public Member Functions | |
CBAlgoAngleCompat () | |
Default constructor. More... | |
virtual | ~CBAlgoAngleCompat () |
Default destructor. More... | |
virtual bool | Bool (const ::cluster::ClusterParamsAlg &cluster1, const ::cluster::ClusterParamsAlg &cluster2) |
Overloaded (from CBoolAlgoBase) Bool function. More... | |
void | SetDebug (bool on) |
Method to set debug mode. More... | |
void | SetAllow180Ambig (bool on) |
Method to set whether you allow angles to match with +/- 180 deg difference. More... | |
void | SetAngleCut (double angle) |
Method to set cut value in degrees for angle compatibility test. More... | |
void | SetUseOpeningAngle (bool on) |
Method to set angle cut value to be based on opening angle. More... | |
void | SetMinHits (size_t n) |
Set Minimum Number of Hits to consider Cluster. More... | |
virtual void | Reset () |
Function to reset the algorithm instance called within CMergeManager/CMatchManager's Reset() ... maybe implemented via child class. More... | |
virtual void | EventBegin (const std::vector< cluster::ClusterParamsAlg > &) |
virtual void | EventEnd () |
virtual void | IterationBegin (const std::vector< cluster::ClusterParamsAlg > &) |
virtual void | IterationEnd () |
virtual void | Report () |
void | SetAnaFile (TFile *fout) |
Setter function for an output plot TFile pointer. More... | |
virtual void | SetVerbose (bool doit=true) |
Setter function for verbosity. More... | |
Protected Attributes | |
bool | _debug |
bool | _allow_180_ambig |
bool to suppress lots of output if you want More... | |
double | _max_allowed_2D_angle_diff |
hard shower-axis angle cutoff (only valid for _use_opening_angle==false) More... | |
bool | _use_opening_angle |
size_t | _minHits |
TH1F * | angle_dist_histo |
Min Number of hits for cluster to be considered. More... | |
TFile * | _fout |
TFile pointer to an output file. More... | |
bool | _verbose |
Boolean to choose verbose mode. Turned on if CMergeManager/CMatchManager's verbosity level is >= kPerMerging. More... | |
User defined class CBAlgoAngleCompat ... these comments are used to generate doxygen documentation!
Definition at line 28 of file CBAlgoAngleCompat.h.
cmtool::CBAlgoAngleCompat::CBAlgoAngleCompat | ( | ) |
Default constructor.
Definition at line 7 of file CBAlgoAngleCompat.cxx.
References SetAllow180Ambig(), SetAngleCut(), SetDebug(), SetMinHits(), and SetUseOpeningAngle().
|
inlinevirtual |
|
virtual |
Overloaded (from CBoolAlgoBase) Bool function.
Reimplemented from cmtool::CBoolAlgoBase.
Definition at line 28 of file CBAlgoAngleCompat.cxx.
References _allow_180_ambig, _debug, _max_allowed_2D_angle_diff, _minHits, _use_opening_angle, cmtool::CMAlgoBase::_verbose, and util::abs().
Referenced by ~CBAlgoAngleCompat().
|
inlinevirtualinherited |
Optional function: called at the beginning of 1st iteration. This is called per event.
Reimplemented in cmtool::CPAlgoArray, cmtool::CBAlgoArray, and cmtool::CBAlgoPolyShortestDist.
Definition at line 45 of file CMAlgoBase.h.
Referenced by cmtool::CMergeManager::EventBegin().
|
inlinevirtualinherited |
Optional function: called at the end of event ... after the last merging iteration is over.
Reimplemented in cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 50 of file CMAlgoBase.h.
Referenced by cmtool::CMatchManager::EventEnd(), and cmtool::CMergeManager::EventEnd().
|
inlinevirtualinherited |
Optional function: called at the beggining of each iteration over all pairs of clusters. This provides all clusters' information in case the algorithm need them. Note this is called per iteration which may be more than once per event.
Reimplemented in cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 57 of file CMAlgoBase.h.
Referenced by cmtool::CMatchManager::EventBegin(), cmtool::CMatchManager::IterationBegin(), and cmtool::CMergeManager::IterationBegin().
|
inlinevirtualinherited |
Optional function: called at the end of each iteration over all pairs of clusters.
Reimplemented in cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 62 of file CMAlgoBase.h.
Referenced by cmtool::CMatchManager::IterationEnd(), and cmtool::CMergeManager::IterationEnd().
|
inlinevirtualinherited |
Optional function: called after Bool() function is called for all possible cluster pairs by CMergeManager/CMatchManager IFF run with verbosity level kPerIteration. Maybe useful for debugging.
Reimplemented in cmtool::CPAlgoArray, cmtool::CBAlgoArray, cmtool::CBAlgoPolyShortestDist, cmtool::CBAlgoStartTrack, cmtool::CBAlgoProhibitAllTracks, cmtool::CBAlgoOutOfConeSeparate, cmtool::CBAlgoAngleSeparate, cmtool::CBAlgoMergeTinyWithBig, cmtool::CFAlgoShowerCompat, cmtool::CBAlgoStartNearEnd, cmtool::CFAlgoTimeOverlap, cmtool::CBAlgoProhibitBigClusters, cmtool::CPAlgoIgnoreTracks, cmtool::CFAlgoQRatio, cmtool::CFAlgoZOverlap, cmtool::CBAlgoCenterOfMass, and cmtool::CBAlgoCenterOfMassSmall.
Definition at line 69 of file CMAlgoBase.h.
Referenced by cmtool::CMergeManager::IterationEnd(), cmtool::CMatchManager::IterationProcess(), and cmtool::CMergeManager::IterationProcess().
|
inlinevirtualinherited |
Function to reset the algorithm instance called within CMergeManager/CMatchManager's Reset() ... maybe implemented via child class.
Reimplemented in cmtool::CBAlgoArray, cmtool::CPAlgoArray, cmtool::CBAlgoPolyShortestDist, cmtool::CBAlgoStartTrack, cmtool::CBAlgoProhibitAllTracks, cmtool::CBAlgoOutOfConeSeparate, cmtool::CBAlgoMergeTinyWithBig, cmtool::CFAlgoShowerCompat, cmtool::CBAlgoAngleSeparate, cmtool::CBAlgoProhibitBigClusters, cmtool::CPAlgoIgnoreTracks, cmtool::CFAlgoTimeOverlap, cmtool::CFAlgoQRatio, cmtool::CFAlgoZOverlap, cmtool::CBAlgoStartNearEnd, cmtool::CBAlgoCenterOfMass, cmtool::CBAlgoCenterOfMassSmall, cmtool::CBAlgoFake, and cmtool::CBAlgoMergeAll.
Definition at line 40 of file CMAlgoBase.h.
Referenced by cmtool::CMergeManager::Reset(), cmtool::CMatchManager::Reset(), and cmtool::CMManagerBase::Reset().
|
inline |
Method to set whether you allow angles to match with +/- 180 deg difference.
Definition at line 45 of file CBAlgoAngleCompat.h.
References _allow_180_ambig.
Referenced by CBAlgoAngleCompat().
|
inlineinherited |
Setter function for an output plot TFile pointer.
Definition at line 72 of file CMAlgoBase.h.
References cmtool::CMAlgoBase::_fout.
Referenced by cmtool::CMergeManager::EventBegin().
|
inline |
Method to set cut value in degrees for angle compatibility test.
Definition at line 48 of file CBAlgoAngleCompat.h.
References _max_allowed_2D_angle_diff.
Referenced by CBAlgoAngleCompat().
|
inline |
Method to set debug mode.
Definition at line 42 of file CBAlgoAngleCompat.h.
References _debug.
Referenced by CBAlgoAngleCompat().
|
inline |
Set Minimum Number of Hits to consider Cluster.
Definition at line 54 of file CBAlgoAngleCompat.h.
Referenced by CBAlgoAngleCompat().
|
inline |
Method to set angle cut value to be based on opening angle.
Definition at line 51 of file CBAlgoAngleCompat.h.
References _use_opening_angle.
Referenced by CBAlgoAngleCompat().
|
inlinevirtualinherited |
Setter function for verbosity.
Reimplemented in cmtool::CBAlgoArray, and cmtool::CFAlgoTimeOverlap.
Definition at line 75 of file CMAlgoBase.h.
References cmtool::CMAlgoBase::_verbose.
Referenced by cmtool::CMatchManager::EventBegin(), and cmtool::CMergeManager::EventBegin().
|
protected |
bool to suppress lots of output if you want
bool to allow "backwards" clusters (swapped start/end points) to still match in angle, even though they are 180 degrees apart only valid for _use_opening_angle==false
Definition at line 64 of file CBAlgoAngleCompat.h.
Referenced by Bool(), and SetAllow180Ambig().
|
protected |
Definition at line 59 of file CBAlgoAngleCompat.h.
Referenced by Bool(), and SetDebug().
|
protectedinherited |
TFile pointer to an output file.
Definition at line 79 of file CMAlgoBase.h.
Referenced by cmtool::CMAlgoBase::CMAlgoBase(), and cmtool::CMAlgoBase::SetAnaFile().
|
protected |
hard shower-axis angle cutoff (only valid for _use_opening_angle==false)
Definition at line 67 of file CBAlgoAngleCompat.h.
Referenced by Bool(), and SetAngleCut().
|
protected |
Definition at line 73 of file CBAlgoAngleCompat.h.
Referenced by Bool(), and SetMinHits().
|
protected |
bool set to true if you want to use opening angle as the cutoff angle instead of whatever you set with SetAngleCut
Definition at line 71 of file CBAlgoAngleCompat.h.
Referenced by Bool(), and SetUseOpeningAngle().
|
protectedinherited |
Boolean to choose verbose mode. Turned on if CMergeManager/CMatchManager's verbosity level is >= kPerMerging.
Definition at line 82 of file CMAlgoBase.h.
Referenced by cmtool::CBAlgoAngleAlign::Bool(), Bool(), cmtool::CBAlgoPolyOverlap::Bool(), cmtool::CBAlgoOutOfConeSeparate::Bool(), cmtool::CBAlgoAngleSeparate::Bool(), cmtool::CBAlgoCenterOfMassSmall::Bool(), cmtool::CBAlgoCenterOfMass::Bool(), cmtool::CBAlgoStartNearEnd::Bool(), cmtool::CBAlgoProhibitAllTracks::Bool(), cmtool::CMAlgoBase::CMAlgoBase(), cmtool::CFAlgoZOverlap::Float(), cmtool::CFAlgoQRatio::Float(), cmtool::CMAlgoBase::SetVerbose(), cmtool::CBAlgoCenterOfMass::ShortestDistanceSquared(), and cmtool::CBAlgoCenterOfMassSmall::ShortestDistanceSquared().
|
protected |
Min Number of hits for cluster to be considered.
Histogram used for debugging/cut value settings
Definition at line 76 of file CBAlgoAngleCompat.h.