Imperial Analysis
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
SuperCluster.hh
Go to the documentation of this file.
1 #ifndef ICHiggsTauTau_SuperCluster_hh
2 #define ICHiggsTauTau_SuperCluster_hh
3 #include <map>
4 #include <string>
5 #include <vector>
6 #include "Math/Point3D.h"
7 #include "Math/Point3Dfwd.h"
8 #include "Math/Vector4D.h"
9 #include "Math/Vector4Dfwd.h"
10 #include "Rtypes.h"
11 
12 namespace ic {
13 
17 class SuperCluster {
18  private:
19  typedef ROOT::Math::XYZPoint Point;
20  typedef ROOT::Math::PtEtaPhiEVector Vector;
21 
22  public:
23  SuperCluster();
24  virtual ~SuperCluster();
25  virtual void Print() const;
26 
28 
29  inline Point const& point() const { return point_; }
31 
33  inline double vx() const { return point_.x(); }
34 
36  inline double vy() const { return point_.y(); }
37 
39  inline double vz() const { return point_.z(); }
40 
42  inline double pt() const { return (energy_ * sin(point_.theta())); }
43 
45  inline double eta() const { return (point_.eta()); }
46 
48  inline double phi() const { return (point_.phi()); }
49 
51  inline double const& energy() const { return energy_; }
52 
54  inline double const& raw_energy() const { return raw_energy_; }
55 
58  inline Vector vector() const { return Vector(pt(), eta(), phi(), energy_); }
59 
61  inline bool const& is_barrel() const { return is_barrel_; }
62 
64  inline std::size_t id() const { return id_; }
67 
70  inline void set_point(Point const& point) { point_ = point; }
72 
74  inline void set_vx(double const& x) { point_.SetX(x); }
75 
77  inline void set_vy(double const& y) { point_.SetY(y); }
78 
80  inline void set_vz(double const& z) { point_.SetZ(z); }
81 
83  inline void set_id(std::size_t const& id) { id_ = id; }
84 
86  inline void set_energy(double const& energy) { energy_ = energy; }
87 
89  inline void set_raw_energy(double const& raw_energy) {
90  raw_energy_ = raw_energy;
91  }
92 
94  inline void set_is_barrel(bool const& is_barrel) { is_barrel_ = is_barrel; }
97  private:
98  Point point_;
99  std::size_t id_;
100  double energy_;
101  double raw_energy_;
102  bool is_barrel_;
103 
104  #ifndef SKIP_CINT_DICT
105  public:
107  #endif
108 };
109 
110 typedef std::vector<ic::SuperCluster> SuperClusterCollection;
111 }
113 #endif
void set_raw_energy(double const &raw_energy)
Raw supercluster energy.
Definition: SuperCluster.hh:89
void set_point(Point const &point)
The supercluster 3D co-ordinates.
Definition: SuperCluster.hh:71
double eta() const
The direction of the supercluster.
Definition: SuperCluster.hh:45
double const & raw_energy() const
Raw supercluster energy.
Definition: SuperCluster.hh:54
double vz() const
The supercluster z-coordinate.
Definition: SuperCluster.hh:39
void set_vy(double const &y)
The supercluster y-coordinate.
Definition: SuperCluster.hh:77
ClassDef(SuperCluster, 2)
void set_is_barrel(bool const &is_barrel)
True if the supercluster is in the EB, false otherwise.
Definition: SuperCluster.hh:94
void set_energy(double const &energy)
Corrected supercluster energy.
Definition: SuperCluster.hh:86
double pt() const
Defined as .
Definition: SuperCluster.hh:42
Definition: CaloJet.hh:9
void set_vx(double const &x)
The supercluster x-coordinate.
Definition: SuperCluster.hh:74
Point const & point() const
The supercluster 3D co-ordinates.
Definition: SuperCluster.hh:30
virtual void Print() const
Definition: SuperCluster.cc:10
double vx() const
The supercluster x-coordinate.
Definition: SuperCluster.hh:33
See documentation here.
Definition: SuperCluster.hh:17
bool const & is_barrel() const
True if the supercluster is in the EB, false otherwise.
Definition: SuperCluster.hh:61
double vy() const
The supercluster y-coordinate.
Definition: SuperCluster.hh:36
virtual ~SuperCluster()
Definition: SuperCluster.cc:8
Vector vector() const
A four-momentum constructed from the pt(), eta(), phi() and energy() values.
Definition: SuperCluster.hh:58
std::size_t id() const
Unique identifier.
Definition: SuperCluster.hh:64
void set_vz(double const &z)
The supercluster z-coordinate.
Definition: SuperCluster.hh:80
double phi() const
The direction of the supercluster.
Definition: SuperCluster.hh:48
void set_id(std::size_t const &id)
Unique identifier.
Definition: SuperCluster.hh:83
std::vector< ic::SuperCluster > SuperClusterCollection
double const & energy() const
Corrected supercluster energy.
Definition: SuperCluster.hh:51