10 #ifndef CLUSTERMERGEALG_H 11 #define CLUSTERMERGEALG_H 70 cluster_index = 0xffffffff;
72 start_wire = start_time = end_wire = end_time = -1;
73 start_wire_err = start_time_err = end_wire_err =end_time_err = -1;
79 :cluster_index(cl.ID())
82 ,start_wire(cl.StartWire())
83 ,start_time(cl.StartTick())
84 ,end_wire(cl.EndWire())
85 ,end_time(cl.EndTick())
86 ,angle(cl.StartAngle())
105 void ReportConfig()
const;
122 void ClearEventInfo();
129 void ProcessMergeAlg();
132 const std::vector<std::vector<unsigned int> >
GetClusterSets ()
const {
return _cluster_sets_v;};
159 double ShortestDistanceSquared(
double point_x,
double point_y,
160 double start_x,
double start_y,
161 double end_x,
double end_y )
const;
174 int isInClusterSets(
unsigned int index)
const;
185 void ClearOutputInfo();
188 void ClearInputInfo();
191 void ClearTTreeInfo();
197 void PrepareDetParams();
214 void FinalizeClusterSets();
217 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.
virtual ~ClusterMergeAlg()
Default destructor.
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)
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.
Algorithm for generating space points from hits.
recob::tracking::Plane Plane
art framework interface to geometry description
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.