10 #ifndef CLUSTERMERGEALG_H
11 #define CLUSTERMERGEALG_H
18 #include "canvas/Persistency/Common/Ptr.h"
74 ,
angle(cl.StartAngle())
99 const std::vector<art::Ptr<recob::Hit> > &in_hit_v);
103 const std::vector<art::Ptr<recob::Hit> > &in_hit_v);
144 double start_x,
double start_y,
145 double end_x,
double end_y )
const;
185 const std::vector<art::Ptr<recob::Hit> > &in_hit_v);
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.
BEGIN_PROLOG true icarus_rawdigitfilter FilterTools FilterPlane1 Plane
void FinalizeClusterSets()
double ShortestDistanceSquared(double point_x, double point_y, double start_x, double start_y, double end_x, double end_y) const
geo::PlaneID planeID
plane ID
enum geo::_plane_proj View_t
Enumerate the possible plane projections.
Declaration of signal hit object.
void ReportConfig() const
Method to report the current configuration.
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.
int AppendToClusterSets(unsigned int cluster_index, int merged_index=-1)
A function to add a cluster to a merged sets (_cluster_sets_v)
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.
bool ShortestDistanceCompatibility(const cluster_merge_info &clus_info_A, const cluster_merge_info &clus_info_B) const
TTree * _merge_tree
Quality Control TTree pointer.
void ClearInputInfo()
Method to clear input cluster information.
Set of hits with a 2D structure.
std::vector< int > _cluster_merged_index
ClusterMergeAlg(fhicl::ParameterSet const &pset)
Default constructor with fhicl parameters.
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 ClearTTreeInfo()
Method to clear quality control TTree variables.
void PrepareDetParams()
Method to prepare detector parameters.
void SetAngleCut(double angle)
Method to set cut value in degrees for angle compatibility test.
void PrepareTTree()
Method to prepare quality control TTree.
float start_time
Vertex time.
bool Angle2DCompatibility(const cluster_merge_info &clus_info_A, const cluster_merge_info &clus_info_B) const
void BuildClusterSets(const cluster_merge_info &clus_info_A, const cluster_merge_info &clus_info_B)
void AppendHitInfo(cluster_merge_info &ci, const std::vector< art::Ptr< recob::Hit > > &in_hit_v)
Method to fill hit-array-related information.
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.
void PrintClusterVars(cluster_merge_info clus_info) const
std::vector< cluster::cluster_merge_info > _u_clusters
Input U-plane clusters' information.
double _min_distance_unit
void ClearEventInfo()
Method to clear event-wise information (both input cluster info & output merged cluster sets) ...
bool CompareClusters(const cluster_merge_info &clus_info_A, const cluster_merge_info &clus_info_B)
Method to compare a compatibility between two clusters.
float end_wire
End point wire.
void AppendClusterInfo(const recob::Cluster &in_cluster, const std::vector< art::Ptr< recob::Hit > > &in_hit_v)
Method to add a cluster information for processing.
int isInClusterSets(unsigned int index) const
geo::View_t view
Wire plane ID.
finds tracks best matching by angle
void ClearOutputInfo()
Method to clear output merged cluster sets (_cluster_sets_v)
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.