LDMX Software
WorkingCluster.h
1
2#ifndef HCAL_WORKINGCLUSTER_H_
3#define HCAL_WORKINGCLUSTER_H_
4
5#include <iostream>
6#include <vector>
7
10#include "TLorentzVector.h"
11#include "TVector3.h"
12
13namespace hcal {
14
16 public:
17 WorkingCluster(const ldmx::HcalHit* eh, const ldmx::HcalGeometry& geom);
18
20
21 void add(const ldmx::HcalHit* eh, const ldmx::HcalGeometry& geom);
22
23 void add(const WorkingCluster& wc);
24
25 double GetTime() { return time_; }
26
27 const TLorentzVector& centroid() const { return centroid_; }
28
29 void SetCentroidPxPyPzE(double newCentroidX, double newCentroidY,
30 double newCentroidZ, double newE) {
31 centroid_.SetPxPyPzE(newCentroidX, newCentroidY, newCentroidZ, newE);
32 }
33
34 void SetTime(double t) { time_ = t; }
35
36 std::vector<const ldmx::HcalHit*> getHits() const { return hits_; }
37
38 void addHit(const ldmx::HcalHit* eh) { hits_.push_back(eh); }
39
40 bool empty() const { return hits_.empty(); }
41
42 void clear() { hits_.clear(); }
43
44 private:
45 std::vector<const ldmx::HcalHit*> hits_;
46 TLorentzVector centroid_;
47 double time_ = 0;
48};
49} // namespace hcal
50
51#endif
Class that translates HCal ID into positions of strip hits.
Class that stores Stores reconstructed hit information from the HCAL.
Implementation of HCal strip readout.
Stores reconstructed hit information from the HCAL.
Definition HcalHit.h:23