Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PidCandidate.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PidCandidate.h
1 #ifndef PIDCANDIDATE_H__
2 #define PIDCANDIDATE_H__
3 
4 #include <phool/PHObject.h>
5 #include <cmath>
6 #include <climits>
7 
8 class PidCandidate: public PHObject
9 {
10 public:
12  virtual ~PidCandidate() {}
13 
14  virtual void identify(std::ostream& os = std::cout) const;
15 
16  virtual void Copy(PidCandidate const &tc);
17 
18  friend std::ostream &operator<<(std::ostream & stream, const PidCandidate * tc);
19 
20  virtual void Reset();
21 
22  virtual void print() const {std::cout<<"PidCandidate base class - print() not implemented"<<std::endl;}
23 
27  enum PROPERTY
28  {//
29 
30  //-- Truth properties: 1 - 100 --
41 
42  //-- Jet properties: 101 - ? --
43  jet_id = 101,
44  jet_eta = 102,
45  jet_phi = 103,
46  jet_etotal = 104,
47  jet_etrans = 105,
48  jet_ptotal = 106,
49  jet_ptrans = 107,
50  jet_minv = 108,
51  jet_mtrans = 109,
52  jet_ncomp = 110,
57 
58  //-- Jet shape in calorimeter: 120 - 200 --
60  jetshape_rms = 122,
61  jetshape_r90 = 123,
62 
68 
72 
78 
79  //-- Track information: 201 - 250 --
83 
87 
92 
93  //-- EM Candidates Cluster
99  em_cluster_e = 306,
108 
109  //-- EM Candidates Tracks
110  em_track_id = 350,
135 
136  //-- EM PID probabilities
141 
142  //-- EM Candidates Truth
151 
152  //-- Event kinematics reconstructed from candidate
153  em_reco_x_e = 410,
154  em_reco_y_e = 411,
156  em_reco_w_e = 413,
157 
159  prop_MAX_NUMBER = UCHAR_MAX
160  };
161 
163  {//
164  type_int = 1,
168  };
169 
170  virtual bool has_property(const PROPERTY prop_id) const {return false;}
171  virtual float get_property_float(const PROPERTY prop_id) const {return NAN;}
172  virtual int get_property_int(const PROPERTY prop_id) const {return INT_MIN;}
173  virtual unsigned int get_property_uint(const PROPERTY prop_id) const {return UINT_MAX;}
174  virtual void set_property(const PROPERTY prop_id, const float value) {return;}
175  virtual void set_property(const PROPERTY prop_id, const int value) {return;}
176  virtual void set_property(const PROPERTY prop_id, const unsigned int value) {return;}
177  static std::pair<const std::string,PROPERTY_TYPE> get_property_info(PROPERTY prop_id);
178  static bool check_property(const PROPERTY prop_id, const PROPERTY_TYPE prop_type);
179  static std::string get_property_type(const PROPERTY_TYPE prop_type);
180 
181 protected:
182  virtual unsigned int get_property_nocheck(const PROPERTY prop_id) const {return UINT_MAX;}
183  virtual void set_property_nocheck(const PROPERTY prop_id,const unsigned int) {return;}
184 
185  ClassDef(PidCandidate,1)
186 };
187 
188 #endif