10 #ifndef CLUSTERMERGEALG_H 11 #define CLUSTERMERGEALG_H 58 cluster_index = 0xffffffff;
60 start_wire = start_time = end_wire = end_time = -1;
61 start_wire_err = start_time_err = end_wire_err = end_time_err = -1;
66 : cluster_index(cl.ID())
69 , start_wire(cl.StartWire())
70 , start_time(cl.StartTick())
71 , end_wire(cl.EndWire())
72 , end_time(cl.EndTick())
73 , angle(cl.StartAngle())
87 void ReportConfig()
const;
90 void SetAngleCut(
double angle) { _max_allowed_2D_angle_diff = angle; }
104 void ClearEventInfo();
111 void ProcessMergeAlg();
114 const std::vector<std::vector<unsigned int>>
GetClusterSets()
const {
return _cluster_sets_v; };
141 double ShortestDistanceSquared(
double point_x,
159 int isInClusterSets(
unsigned int index)
const;
169 void ClearOutputInfo();
172 void ClearInputInfo();
175 void ClearTTreeInfo();
181 void PrepareDetParams();
197 void FinalizeClusterSets();
200 int AppendToClusterSets(
unsigned int cluster_index,
int merged_index = -1);
void VerboseMode(bool on)
Method to set verbose mode.
void SetSquaredDistanceCut(double d)
Method to set cut value in cm^2 for distance compatibility test.
geo::PlaneID planeID
plane ID
enum geo::_plane_proj View_t
Enumerate the possible plane projections.
Declaration of signal hit object.
std::vector< cluster::cluster_merge_info > _v_clusters
Input V-plane clusters' information.
double _time_2_cm
Conversion factor from time to cm scale.
const std::vector< std::vector< unsigned int > > GetClusterSets() const
Method to extract resulting set of cluster IDs for merging computed by ProcessMergeAlg() function...
cluster_merge_info()
Default constructor.
The data type to uniquely identify a Plane.
double end_wire_err
End point wire error.
cluster_merge_info(const recob::Cluster &cl)
Initialization from a recob::Cluster.
double _wire_2_cm
Conversion factor from wire number to cm scale.
TTree * _merge_tree
Quality Control TTree pointer.
Set of hits with a 2D structure.
std::vector< int > _cluster_merged_index
Cluster finding and building.
std::vector< cluster::cluster_merge_info > _w_clusters
Input W-plane clusters' information.
float end_time
End point time.
double start_wire_err
Vertex wire error.
bool _verbose
Verbose mode boolean.
float start_wire
Vertex wire.
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
void SetTime2Cm(double f)
Method to set a conversion factor from time to cm scale.
void SetAngleCut(double angle)
Method to set cut value in degrees for angle compatibility test.
float start_time
Vertex time.
double _max_allowed_2D_angle_diff
Declaration of cluster object.
float angle
2D starting angle (in radians)
Definition of data types for geometry description.
std::vector< std::vector< unsigned int > > _cluster_sets_v
bool _det_params_prepared
Boolean to keep track of detector parameter preparation.
unsigned int cluster_index
Input cluster ID.
std::vector< cluster::cluster_merge_info > _u_clusters
Input U-plane clusters' information.
double _min_distance_unit
float end_wire
End point wire.
geo::View_t view
Wire plane ID.
recob::tracking::Plane Plane
double start_time_err
Vertex time error.
double end_time_err
End point time error.
void SetWire2Cm(double f)
Method to set a conversion factor from wire to cm scale.